aboutsummaryrefslogtreecommitdiffstats
path: root/lab4
diff options
context:
space:
mode:
authorymherklotz <ymherklotz@gmail.com>2018-02-15 12:04:58 +0000
committerymherklotz <ymherklotz@gmail.com>2018-02-15 12:04:58 +0000
commitf7552f668de19e0341ac94bbc9c1ee7f502c230f (patch)
tree3d7c3f0548c65665ebc1eb0d2000599f8c7f689f /lab4
parentc2cea2844c962f349673e488183e6606b0a76e7b (diff)
downloadNoiseSilencer-f7552f668de19e0341ac94bbc9c1ee7f502c230f.tar.gz
NoiseSilencer-f7552f668de19e0341ac94bbc9c1ee7f502c230f.zip
removing .metadata
Diffstat (limited to 'lab4')
-rw-r--r--lab4/.metadata/.lock0
-rw-r--r--lab4/.metadata/.log347
-rw-r--r--lab4/.metadata/.plugins/com.ti.ccstudio.debug.registers.ui/expressions.xml4
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/101bb2c_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/10a5068_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1317541_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/15c960e_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/16f3621_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/17485ac_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1782f03_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1800bc_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a34544_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a709f1_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1ae30a_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d0540c_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d121c7_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/87b2c8_null.dat0
-rw-r--r--lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/b7b831_null.dat0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.cdt.core/.log1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.cdt.core/RTDSP.1516884280118.pdombin491520 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/105abdf041070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/8073ece4e50100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e089fc2ddf0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e0919779cd0100181ce89bcacea4578633
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/40691f2ee10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/b004f055e20100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/10/704ae3aee50100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ef0b99d80100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/a0a0870d7606001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/3014b998d80100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/30d5c20e7506001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/8036c150dd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0057cd3e10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/000eb0d3e10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/60428579cd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/15/60b3357add0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/16/108692d57506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/00e09779cd0100181ce89bcacea4578661
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/d05cb9d3e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/19/f04dce2ddf0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/1022fd98d80100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/40122e7add0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/a023afd3e10100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c038734c7506001814daa3a49c232c18197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/f0d3fc98d80100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/8090337add0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/b01c9779cd0100181ce89bcacea4578611
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/2000dd3a45070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/906884cc7506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b0ee98d57506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1f/20715f203f070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/00762d7add0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/008ce4157506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/2049afcc7506001814daa3a49c232c181755
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/d02ed3c9e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/20f2a96bdd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/30f287f041070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/4003fb2ddf0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/90f7132ee10100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/10f7a2c9e10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/507debf244070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/d0cbd93a45070018153483e962c7925e1761
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/e0982f7add0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/3074f5e4e50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/e0209579cd0100181ce89bcacea45786292
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/50fa68173f070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/d0ae7f11e10100181ce89bcacea457861753
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/25/50c8e43a45070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/26/a07db26bdd0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/505f11afe50100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/50c7af173f070018153483e962c7925e197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/605bf16bdd0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/28/f098fa43610b001815de8ca47440e6f8129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/0033d1c9e10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/705292f041070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/f0298f53e50100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/6050cf8e41070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/d07f037add0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2c/b0a28450dd0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d02ebff041070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d036bc2bdf0100181ce89bcacea45786163
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/e0af088f41070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/0035e624610b001815de8ca47440e6f81
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/3055c550dd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/0053df2de10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/b0948379cd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/009c10afe50100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/30739379cd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/407fa9277506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/700cfe98d80100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/e0098479cd0100181ce89bcacea457861091
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20c3e955e20100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20ebadd3e10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/c0057b50dd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/0038e743610b001815de8ca47440e6f898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/20faede4e50100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/90a9b281dd0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/c0d8e855e20100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/105cfa6bdd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/b0c985d3e10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/90b6ef55e20100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/e0029a79cd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/36/f0ad734c7506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/5035a7277506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/6082132ee10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/80ef794c7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/a08be53a45070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c01dc1e4e50100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c07012afe50100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/60afae277506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/806bbef041070018153483e962c7925e197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/40f3ddaee50100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/60d890d57506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/2089ebe4e50100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/504e62d57506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/00e2f26bdd0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/104f7b4c7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/6094e5aee50100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/60cd484c7506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/50df048f41070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/702cf955e20100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d035b850dd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e002c750dd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/30a8bdf041070018153483e962c7925e8762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/c007bff041070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/102c7d79cd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/204eee6bdd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/20728011e10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00052b7add0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00c2cec9e10100181ce89bcacea457861744
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/90cc8e0d7606001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/e071b03a45070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/10bb61203f070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/50f9b0277506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/41/3032acf07406001814daa3a49c232c18157
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/002ef37c040500181ac69c959115c706164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/909a15f344070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/b004ae467506001814daa3a49c232c18153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50b47d277506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50c7e755e20100181ce89bcacea457861753
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/a010d67a44070018153483e962c7925e153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/c080efe4e50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/d0e9c9257506001814daa3a49c232c18154
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/1019a987d80100181ce89bcacea45786134
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/3034b9cc7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/90fb11afe50100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/b077eae4e50100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/45/e04d10afe50100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/1042f855e20100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/20548511e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/408a90d57506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/30af8979cd0100181ce89bcacea45786292
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/80e417f344070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/b019b3cc7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/20cdb2d3e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/d05f734c7506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/70ad11afe50100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/9094e724610b001815de8ca47440e6f829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/6070c5f041070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/80189979cd0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/90a47acc7506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4b/b03caf40d80100181ce89bcacea45786173
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/00995c0d7606001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/2031a9277506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/8016910d7606001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/303e8779cd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/30550e8f41070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/9021d0c9e10100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0de8579cd0100181ce89bcacea4578614
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/105ce42de10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/b014fc2ddf0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/20bd9579cd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/e0b5801fd90100181ce89bcacea45786145
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/00aae4aee50100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/506c4f3fdd0100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/903cb055e20100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/90d0f16bdd0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/53/50d1b0d3e10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/00ef12167506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/9005ea24610b001815de8ca47440e6f891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/a0ea724c7506001814daa3a49c232c1829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/10f9b9d3e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/50231bafe50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/60071af344070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/90d58079cd0100181ce89bcacea4578611
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/d0718179cd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/57/409b1ef344070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/6004870d7606001814daa3a49c232c181755
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/7046fb6bdd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/70b0b998d80100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/d036ede4e50100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5a/a028c68e41070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80bc8150dd0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80f3b481dd0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a0fbb2173f070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/b0d781f041070018153483e962c7925e153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5c/c00f16f344070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5d/508966173f070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/00c98679cd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1068da3a45070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/40a705e07406001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/b088b098d80100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0c9cd8e41070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f00bbdf041070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/00e3a8277506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/8002eae4e50100181ce89bcacea457861753
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/803d7e79cd0100181ce89bcacea4578614
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/c0e7007add0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/50befd98d80100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/a09e5355d70100181ce89bcacea45786173
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/b07cc7d3d80100181ce89bcacea45786131
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/2008ebf244070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/50c82b7add0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b08ff46bdd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b0c7870d7606001814daa3a49c232c188762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/d015880d7606001814daa3a49c232c1829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/7075724c7506001814daa3a49c232c188762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/e0ad63d57506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/2094550d7606001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/700f0a8f41070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/b0b27e79cd0100181ce89bcacea45786292
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/f097b8cc7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/a02ac1f041070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/f019da3a45070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/304a744c7506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/a05719167506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/307e152ee10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/40cfd1c9e10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/50635e5cdd0100181ce89bcacea45786165
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e094a8277506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e0ba82cc7506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6b/f07ee824610b001815de8ca47440e6f8129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/50cc152ee10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/e0ba142ee10100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/80f640ba7506001814daa3a49c232c18153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/f040ddc9e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/601fe724610b001815de8ca47440e6f88762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/90ec078f41070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/e0f296d57506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f0f48d79cd0100181ce89bcacea4578621
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/9027ba173f070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0518fd57506001814daa3a49c232c1829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/70/90ea890d7606001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/100a484c7506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/40b5a555e20100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/72/806f69173f070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/30e520f344070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/70a39b367506001814daa3a49c232c18154
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/74/2010cfc9e10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/00958211e10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/3070fd98d80100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/6038b7cc7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/90ecbe50dd0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/d01f8211e10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/20cc10167506001814daa3a49c232c188762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50a1f643610b001815de8ca47440e6f891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50f6bdf041070018153483e962c7925e29
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/7011ef6bdd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/20e38211e10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/6064d83ed90100181ce89bcacea45786146
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/e05d16f344070018153483e962c7925e8762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/79/401a11167506001814daa3a49c232c1829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7a/f07ee62de10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/204a64d57506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/d034bd173f070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/30febe117506001814daa3a49c232c18157
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/704646e97406001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7d/20d9880d7606001814daa3a49c232c18197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/6051fb2ddf0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/70e18ff041070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/b06f28487506001814daa3a49c232c18154
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/206abb50dd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/60248a79cd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/700f9479cd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/504e890d7606001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/80b58ed57506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/50b88350dd0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/a086ef6bdd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/101590d57506001814daa3a49c232c18197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/308e8616dc0100181ce89bcacea45786147
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/501aef55e20100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/90df7b277506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2026fd2ddf0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2081d1c9e10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/407a900d7606001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/10808c11e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/30e1b1cc7506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/d06da8277506001814daa3a49c232c18197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/f0e25e0d7606001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/204a8b0d7606001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/b0550f3f7506001814daa3a49c232c18153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/d0789dc9e10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/10d1bd173f070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/a0450899d80100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0adde3a45070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/88/b05c5d2bd90100181ce89bcacea45786146
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/20a68479cd0100181ce89bcacea4578611
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/60b38779cd0100181ce89bcacea457861091
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/808fef55e20100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/9063b0173f070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/b0e2e52de10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/c0caf92ddf0100181ce89bcacea457861753
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8a/10871aafe50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/30d9714c7506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/b01c90f77406001814daa3a49c232c18157
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/d0d3fe2ddf0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/e0245e173f070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/100e8279cd0100181ce89bcacea4578614
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/508bf155e20100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d0d0754c7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/f0cfc6f041070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/30d8a3df7406001814daa3a49c232c18155
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60fedcf244070018153483e962c7925e150
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/105db0277506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/30b97d3d7506001814daa3a49c232c18151
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/50329679cd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/7086ea55e20100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f08adc3a45070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/20f98b79cd0100181ce89bcacea4578611
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/c0f0058f41070018153483e962c7925e29
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/90/f044b1cc7506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/c009e824610b001815de8ca47440e6f8197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f044ff98d80100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f04e7f79cd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/d00810167506001814daa3a49c232c181753
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/f04de955e20100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/3071a73a45070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/802691d57506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/703c0fafe50100181ce89bcacea457861744
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c045f26bdd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c05cef24610b001815de8ca47440e6f80
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/605c464c7506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/709c890d7606001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0d03d4c7506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/f065bd50dd0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/602c1b167506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/e07e1e2ee10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/f0b5db7a44070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/d08ebc4ae50100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/e0e4d0c9e10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80a79679cd0100181ce89bcacea457861091
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a04edc157506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/c06d5e0d7606001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/00d8fc2ddf0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/60127c4c7506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/b0d80fafe50100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/d0f6b0cc7506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/405ecfc9e10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d02b0b99d80100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d0deaa277506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/e026b1173f070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/20cd5b067506001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/803d2c7add0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/c036a62ce10100181ce89bcacea45786130
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0464a11e10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a1/c0f7e930dd0100181ce89bcacea45786155
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/1020aa98d80100181ce89bcacea45786134
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/8079db3a45070018153483e962c7925e29
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/e02950c77506001814daa3a49c232c18153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/10fc734c7506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/500cc0e4e50100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/507c0610e10100181ce89bcacea45786163
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/e08e0199d80100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/200e7750dd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/e0f259203f070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/30eb2d7add0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/506df655e20100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b067d940dd0100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a7/10b34511e10100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/60678ed57506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/907b058f41070018153483e962c7925e8762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e0a012167506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ac/e0be12afe50100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/702d85d3e10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/f0fc7f11e10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30716684d80100181ce89bcacea45786131
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30e6f06bdd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a00412167506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/af/a0038fd57506001814daa3a49c232c188762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b/908a0fafe50100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/00df4c11e10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/4039aed3e10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/9063e855e20100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f0e6afd3e10100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b1/301be924610b001815de8ca47440e6f87
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/3079af173f070018153483e962c7925e29
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7083a7277506001814daa3a49c232c188762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c06c142ee10100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0cfb0cc7506001814daa3a49c232c18197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/f0838b79cd0100181ce89bcacea457861091
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/4047b950dd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/8066fd24610b001815de8ca47440e6f80
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/40ddda3a45070018153483e962c7925e8762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/60e5afcc7506001814daa3a49c232c188762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/80fcf86bdd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/307a2b7add0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/30c3b155e20100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/a0b9bef041070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/003bebe4e50100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/4074fd2ddf0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/50f69169d70100181ce89bcacea45786173
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/6052dec9e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/407c9879cd0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b058ba50dd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/6055ca0a7606001814daa3a49c232c18153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/a0f332c97506001814daa3a49c232c18153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/20e6122ee10100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05883d3e10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05c0efd7406001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c09d8879cd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/e0272d7add0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ba/8046b1d3e10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/10f0347add0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/d00485cc7506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bc/d0538679cd0100181ce89bcacea45786292
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/203c90d57506001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/90468379cd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b01fa8277506001814daa3a49c232c1829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/705ae9f244070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0849479cd0100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/3090e2157506001814daa3a49c232c1891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b05cd83ddd0100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0d18111e10100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/206a048f41070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/809ffb2ddf0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/301b9717d90100181ce89bcacea45786146
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/90edf3e4e50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/c0d92c7add0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/f02e74c17406001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c3/102baf173f070018153483e962c7925e8762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c4/f03c714c7506001814daa3a49c232c181755
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c5/c05212167506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/50aa8279cd0100181ce89bcacea45786292
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0c1ece4e50100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0f44b11e10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/d0f6fe98d80100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/0061b7d3e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/5082e17a44070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/606e027add0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/b06fbcf041070018153483e962c7925e1758
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0f4038f41070018153483e962c7925e1755
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a07cb9e4e50100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a09bd7c9e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ca/007e10167506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/005c1c2ee10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/609617f344070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/70526824610b001815de8ca47440e6f898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cc/702b870d7606001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/a0eccf8e41070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/d0db0f8f41070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/f0bed02ddf0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b1b0173f070018153483e962c7925e7
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d/b03da274dd0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/d08eae173f070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/f0dcae173f070018153483e962c7925e1
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/701a162ee10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/b0c9bc50dd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d4/40848a11e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/600e8111e10100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90998a79cd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90b77924610b001815de8ca47440e6f8129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d6/d0fbef6bdd0100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/302117f344070018153483e962c7925e197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/50feebe4e50100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/80e1a03a45070018153483e962c7925e150
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/90d4cf2ddf0100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/6090e924610b001815de8ca47440e6f898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/60d918afe50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/90288879cd0100181ce89bcacea4578611
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/d0bfe524610b001815de8ca47440e6f81761
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/30eb7f79cd0100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/d0ffb0173f070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/10d9dc3a45070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/208e7810d80100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/20dbbd50dd0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b041e33a45070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f084ede4e50100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f0f0fa5f41070018153483e962c7925e153
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/308317e4d80100181ce89bcacea45786136
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/a05ebee4e50100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/df/30e7a6277506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/703c052edf0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b040ae173f070018153483e962c7925e1755
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b0a3e2f244070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/d085fc98d80100181ce89bcacea457861789
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/e019b36bdd0100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e0/1093b1cc7506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/1093ff98d80100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/10d316f344070018153483e962c7925e29
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/80017c24610b001815de8ca47440e6f87
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/907b8f79cd0100181ce89bcacea457868
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/108b714c7506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/705298d57506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/b0eedb3a45070018153483e962c7925e197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/4093c7f041070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/501c8d11e10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/60608079cd0100181ce89bcacea457861091
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/80b611167506001814daa3a49c232c18197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/e0987524610b001815de8ca47440e6f891
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e5/20b6ac81dd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00a4bff041070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a3b698d80100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4027890d7606001814daa3a49c232c18129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/b08d9979cd0100181ce89bcacea457861789
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/f00573277506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/a0960225610b001815de8ca47440e6f80
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c061088f41070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/1078108f41070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/30a0042edf0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/80f2022edf0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b04b32f47406001814daa3a49c232c18157
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b0a8fe98d80100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/e0d3c62ddf0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/20c8172ee10100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/8086b255e20100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/e02f10167506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/30fa9f53e20100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/8037f6e4e50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40497669dd0100181ce89bcacea45786165
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/a03218f344070018153483e962c7925e98
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/c08018f344070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/4097afcc7506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/e02120f344070018153483e962c7925e0
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/101eb16bdd0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/6077078f41070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/805c8111e10100181ce89bcacea4578629
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/f032b149dd0100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/70bc8c79cd0100181ce89bcacea4578626
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/90f1ea46de0100181ce89bcacea45786165
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/c032bc78dd0100181ce89bcacea45786165
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20865ad57506001814daa3a49c232c1898
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/208f91f041070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20901a167506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30aae624610b001815de8ca47440e6f81
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30c6c750dd0100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/1030152ee10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/50fe14f344070018153483e962c7925e1761
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/a0b0770ad80100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c0b2ad3a45070018153483e962c7925e91
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/20db068f41070018153483e962c7925e197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/3070afcc7506001814daa3a49c232c181
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/80297e277506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f2/b0ee7d1e7506001814daa3a49c232c18155
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f3/4028e5157506001814daa3a49c232c187
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f4/6077be50dd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/003a8979cd0100181ce89bcacea4578614
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/209f9a79cd0100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/3083b0d3e10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f6/c0a4a4c9e10100181ce89bcacea45786129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f7/70aeaed3e10100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f8/a046f979dd0100181ce89bcacea4578698
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/40318311e10100181ce89bcacea4578691
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/606935ce7406001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/70d3cfc9e10100181ce89bcacea457868762
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/10b763de7406001814daa3a49c232c18156
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/8087af3a45070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/c0c314167506001814daa3a49c232c180
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/d03cdc3a45070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/6055b011d90100181ce89bcacea45786138
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/b06fd0c9e10100181ce89bcacea45786197
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/90e00425610b001815de8ca47440e6f80
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/f008e37a44070018153483e962c7925e129
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30b6a5c9e10100181ce89bcacea457867
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/8033b0cc7506001814daa3a49c232c1829
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/804514afe50100181ce89bcacea457860
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/108efa2ddf0100181ce89bcacea457861
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/70bea0c7e10100181ce89bcacea45786164
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/33/history.indexbin11154 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/9d/1f/46/1f/history.indexbin984 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/af/history.indexbin85 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/b3/history.indexbin129 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/cf/history.indexbin56 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/history.indexbin1470 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/properties.indexbin148 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.markers.snapbin3179 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.syncinfo.snapbin448 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.indexbin104 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snapbin448 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resourcesbin5285 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.resources/.snapbin21115 -> 0 bytes
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs3
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.managedbuilder.core.prefs4
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs9
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs3
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml5
-rw-r--r--lab4/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml518
-rw-r--r--lab4/.metadata/version.ini1
589 files changed, 0 insertions, 326898 deletions
diff --git a/lab4/.metadata/.lock b/lab4/.metadata/.lock
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.lock
+++ /dev/null
diff --git a/lab4/.metadata/.log b/lab4/.metadata/.log
deleted file mode 100644
index 290e130..0000000
--- a/lab4/.metadata/.log
+++ /dev/null
@@ -1,347 +0,0 @@
-!SESSION 2018-01-25 12:43:47.683 -----------------------------------------------
-eclipse.buildId=4.1.3.00038
-java.version=1.5.0_14
-java.vendor=Sun Microsystems Inc.
-BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
-Command-line arguments: -os win32 -ws win32 -arch x86
-
-!ENTRY org.eclipse.core.resources 4 566 2018-01-25 14:39:10.969
-!MESSAGE An error occurred while traversing resources.
-!STACK 0
-java.lang.IllegalArgumentException: ProducerArgument not null!!!
-
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildResource.addToArg(BuildResource.java:120)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildIOType.addResource(BuildIOType.java:64)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.addOutputs(BuildDescription.java:906)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.calculateOutputs(BuildDescription.java:1178)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.composeOutputs(BuildDescription.java:596)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.composeOutputs(BuildDescription.java:603)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.access$1(BuildDescription.java:496)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription$RcVisitor.doVisitFile(BuildDescription.java:206)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription$RcVisitor.visit(BuildDescription.java:136)
- at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:57)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:81)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:126)
- at org.eclipse.core.internal.resources.Resource.accept(Resource.java:67)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.initDescription(BuildDescription.java:681)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.init(BuildDescription.java:704)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.DefaultBuildDescriptionFactory.createBuildDescription(DefaultBuildDescriptionFactory.java:37)
- at org.eclipse.cdt.managedbuilder.buildmodel.BuildDescriptionManager.createBuildDescription(BuildDescriptionManager.java:81)
- at org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder.build(GeneratedMakefileBuilder.java:533)
- at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:603)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:167)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:201)
- at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:230)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:233)
- at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:307)
- at org.eclipse.core.internal.resources.Project.build(Project.java:88)
- at org.eclipse.cdt.launch.AbstractCLaunchDelegate.buildForLaunch(AbstractCLaunchDelegate.java:524)
- at com.ti.ccstudio.debug.core.launch.BaseCCELaunchDelegate.buildForLaunch(BaseCCELaunchDelegate.java:235)
- at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:636)
- at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:583)
- at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:779)
- at org.eclipse.debug.internal.ui.DebugUIPlugin$4.run(DebugUIPlugin.java:835)
- at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
-
-!ENTRY com.ti.ccstudio.debug.core 4 0 2018-01-25 14:39:17.273
-!MESSAGE Error: TMS320C671X: Error initializing emulator
-
-
-!ENTRY com.ti.ccstudio.debug.core 4 0 2018-01-25 14:39:38.279
-!MESSAGE Error: TMS320C671X: Error initializing emulator
-
-!SESSION 2018-01-29 14:54:50.504 -----------------------------------------------
-eclipse.buildId=4.1.3.00038
-java.version=1.5.0_14
-java.vendor=Sun Microsystems Inc.
-BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
-Command-line arguments: -os win32 -ws win32 -arch x86
-
-!ENTRY org.eclipse.core.resources 2 10035 2018-01-29 14:54:54.674
-!MESSAGE A workspace crash was detected. The previous session did not exit normally.
-
-!ENTRY org.eclipse.debug.core 4 120 2018-01-29 14:55:00.996
-!MESSAGE Error logged from Debug Core:
-!STACK 1
-org.eclipse.core.internal.resources.ResourceException: Resource is out of sync with the file system: /RTDSP/.launches/RTDSP.launch.
- at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:606)
- at org.eclipse.core.internal.resources.File.getContents(File.java:290)
- at org.eclipse.core.internal.resources.File.getContents(File.java:279)
- at org.eclipse.debug.internal.core.LaunchManager.getInfo(LaunchManager.java:1158)
- at org.eclipse.debug.internal.core.LaunchConfiguration.getInfo(LaunchConfiguration.java:374)
- at org.eclipse.debug.internal.core.LaunchConfiguration.getType(LaunchConfiguration.java:505)
- at org.eclipse.debug.internal.core.LaunchManager.isValid(LaunchManager.java:1702)
- at org.eclipse.debug.internal.core.LaunchManager.verifyConfigurations(LaunchManager.java:2023)
- at org.eclipse.debug.internal.core.LaunchManager.getAllLaunchConfigurations(LaunchManager.java:928)
- at org.eclipse.debug.internal.core.LaunchManager.getLaunchConfigurations(LaunchManager.java:1208)
- at com.ti.ccstudio.breakpoint.core.PropertyUtils.getTargetName(PropertyUtils.java:60)
- at com.ti.ccstudio.breakpoint.ui.action.base.AbstractEditorActionDelegate.determineTargetBreakpoint(AbstractEditorActionDelegate.java:67)
- at com.ti.ccstudio.breakpoint.ui.action.EditorPropertiesRulerActionDelegate.updateMenuItem(EditorPropertiesRulerActionDelegate.java:31)
- at com.ti.ccstudio.breakpoint.ui.action.base.AbstractEditorActionDelegate.setActiveEditor(AbstractEditorActionDelegate.java:44)
- at org.eclipse.ui.internal.EditorPluginAction.editorChanged(EditorPluginAction.java:75)
- at org.eclipse.ui.internal.EditorPluginAction.<init>(EditorPluginAction.java:34)
- at org.eclipse.ui.internal.ActionDescriptor.createAction(ActionDescriptor.java:256)
- at org.eclipse.ui.internal.ActionDescriptor.<init>(ActionDescriptor.java:170)
- at org.eclipse.ui.internal.ViewerActionBuilder.createActionDescriptor(ViewerActionBuilder.java:53)
- at org.eclipse.ui.internal.PluginActionBuilder.readElement(PluginActionBuilder.java:158)
- at org.eclipse.ui.internal.ViewerActionBuilder.readElement(ViewerActionBuilder.java:88)
- at org.eclipse.ui.internal.registry.RegistryReader.readElements(RegistryReader.java:138)
- at org.eclipse.ui.internal.registry.RegistryReader.readElementChildren(RegistryReader.java:127)
- at org.eclipse.ui.internal.PluginActionBuilder.readElement(PluginActionBuilder.java:141)
- at org.eclipse.ui.internal.ViewerActionBuilder.readElement(ViewerActionBuilder.java:88)
- at org.eclipse.ui.internal.registry.RegistryReader.readElements(RegistryReader.java:138)
- at org.eclipse.ui.internal.registry.RegistryReader.readExtension(RegistryReader.java:149)
- at org.eclipse.ui.internal.registry.RegistryReader.readRegistry(RegistryReader.java:170)
- at org.eclipse.ui.internal.PluginActionBuilder.readContributions(PluginActionBuilder.java:112)
- at org.eclipse.ui.internal.ViewerActionBuilder.readViewerContributions(ViewerActionBuilder.java:106)
- at org.eclipse.ui.internal.PopupMenuExtender.readStaticActionsFor(PopupMenuExtender.java:373)
- at org.eclipse.ui.internal.PopupMenuExtender.<init>(PopupMenuExtender.java:125)
- at org.eclipse.ui.internal.PartSite.registerContextMenu(PartSite.java:114)
- at org.eclipse.ui.internal.EditorSite.registerContextMenu(EditorSite.java:151)
- at org.eclipse.ui.texteditor.AbstractTextEditor.createPartControl(AbstractTextEditor.java:2673)
- at org.eclipse.ui.texteditor.StatusTextEditor.createPartControl(StatusTextEditor.java:53)
- at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.createPartControl(AbstractDecoratedTextEditor.java:368)
- at org.eclipse.cdt.internal.ui.editor.CEditor.createPartControl(CEditor.java:843)
- at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:596)
- at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:372)
- at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
- at org.eclipse.ui.internal.EditorAreaHelper.setVisibleEditor(EditorAreaHelper.java:263)
- at org.eclipse.ui.internal.EditorManager.setVisibleEditor(EditorManager.java:1420)
- at org.eclipse.ui.internal.EditorManager$5.run(EditorManager.java:1005)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.runtime.Platform.run(Platform.java:843)
- at org.eclipse.ui.internal.EditorManager.restoreState(EditorManager.java:1000)
- at org.eclipse.ui.internal.WorkbenchPage.restoreState(WorkbenchPage.java:2836)
- at org.eclipse.ui.internal.WorkbenchWindow.restoreState(WorkbenchWindow.java:1949)
- at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:2869)
- at org.eclipse.ui.internal.Workbench.access$14(Workbench.java:2817)
- at org.eclipse.ui.internal.Workbench$19.run(Workbench.java:1681)
- at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1421)
- at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1679)
- at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1650)
- at org.eclipse.ui.internal.Workbench$17.run(Workbench.java:1529)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1473)
- at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
- at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:702)
- at org.eclipse.ui.internal.Workbench.init(Workbench.java:1085)
- at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1847)
- at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
- at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
- at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:97)
- at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
- at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
- at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
- at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
- at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
- at java.lang.reflect.Method.invoke(Unknown Source)
- at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
- at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
- at org.eclipse.core.launcher.Main.run(Main.java:996)
- at org.eclipse.core.launcher.Main.main(Main.java:971)
-!SUBENTRY 1 org.eclipse.core.resources 4 274 2018-01-29 14:55:00.997
-!MESSAGE Resource is out of sync with the file system: /RTDSP/.launches/RTDSP.launch.
-
-!ENTRY com.ti.ccstudio.debug.core 4 5 2018-01-31 10:59:32.937
-!MESSAGE Failed to load program 'C:\GIT\RTDSP\lab4\RTDSP\Debug\RTDSP.out' on target 'Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X'.
-
-Reason:
-File is not available
-!SESSION 2018-02-01 10:57:48.859 -----------------------------------------------
-eclipse.buildId=4.1.3.00038
-java.version=1.5.0_14
-java.vendor=Sun Microsystems Inc.
-BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
-Command-line arguments: -os win32 -ws win32 -arch x86
-
-!ENTRY org.eclipse.core.resources 2 10035 2018-02-01 11:00:06.409
-!MESSAGE A workspace crash was detected. The previous session did not exit normally.
-
-!ENTRY org.eclipse.debug.core 4 120 2018-02-01 11:00:12.086
-!MESSAGE Error logged from Debug Core:
-!STACK 1
-org.eclipse.core.internal.resources.ResourceException: Resource is out of sync with the file system: /RTDSP/.launches/RTDSP.launch.
- at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:606)
- at org.eclipse.core.internal.resources.File.getContents(File.java:290)
- at org.eclipse.core.internal.resources.File.getContents(File.java:279)
- at org.eclipse.debug.internal.core.LaunchManager.getInfo(LaunchManager.java:1158)
- at org.eclipse.debug.internal.core.LaunchConfiguration.getInfo(LaunchConfiguration.java:374)
- at org.eclipse.debug.internal.core.LaunchConfiguration.getType(LaunchConfiguration.java:505)
- at org.eclipse.debug.internal.core.LaunchManager.isValid(LaunchManager.java:1702)
- at org.eclipse.debug.internal.core.LaunchManager.verifyConfigurations(LaunchManager.java:2023)
- at org.eclipse.debug.internal.core.LaunchManager.getAllLaunchConfigurations(LaunchManager.java:928)
- at org.eclipse.debug.internal.core.LaunchManager.getLaunchConfigurations(LaunchManager.java:1208)
- at com.ti.ccstudio.breakpoint.core.PropertyUtils.getTargetName(PropertyUtils.java:60)
- at com.ti.ccstudio.breakpoint.ui.action.base.AbstractEditorActionDelegate.determineTargetBreakpoint(AbstractEditorActionDelegate.java:67)
- at com.ti.ccstudio.breakpoint.ui.action.EditorPropertiesRulerActionDelegate.updateMenuItem(EditorPropertiesRulerActionDelegate.java:31)
- at com.ti.ccstudio.breakpoint.ui.action.base.AbstractEditorActionDelegate.setActiveEditor(AbstractEditorActionDelegate.java:44)
- at org.eclipse.ui.internal.EditorPluginAction.editorChanged(EditorPluginAction.java:75)
- at org.eclipse.ui.internal.EditorPluginAction.<init>(EditorPluginAction.java:34)
- at org.eclipse.ui.internal.ActionDescriptor.createAction(ActionDescriptor.java:256)
- at org.eclipse.ui.internal.ActionDescriptor.<init>(ActionDescriptor.java:170)
- at org.eclipse.ui.internal.ViewerActionBuilder.createActionDescriptor(ViewerActionBuilder.java:53)
- at org.eclipse.ui.internal.PluginActionBuilder.readElement(PluginActionBuilder.java:158)
- at org.eclipse.ui.internal.ViewerActionBuilder.readElement(ViewerActionBuilder.java:88)
- at org.eclipse.ui.internal.registry.RegistryReader.readElements(RegistryReader.java:138)
- at org.eclipse.ui.internal.registry.RegistryReader.readElementChildren(RegistryReader.java:127)
- at org.eclipse.ui.internal.PluginActionBuilder.readElement(PluginActionBuilder.java:141)
- at org.eclipse.ui.internal.ViewerActionBuilder.readElement(ViewerActionBuilder.java:88)
- at org.eclipse.ui.internal.registry.RegistryReader.readElements(RegistryReader.java:138)
- at org.eclipse.ui.internal.registry.RegistryReader.readExtension(RegistryReader.java:149)
- at org.eclipse.ui.internal.registry.RegistryReader.readRegistry(RegistryReader.java:170)
- at org.eclipse.ui.internal.PluginActionBuilder.readContributions(PluginActionBuilder.java:112)
- at org.eclipse.ui.internal.ViewerActionBuilder.readViewerContributions(ViewerActionBuilder.java:106)
- at org.eclipse.ui.internal.PopupMenuExtender.readStaticActionsFor(PopupMenuExtender.java:373)
- at org.eclipse.ui.internal.PopupMenuExtender.<init>(PopupMenuExtender.java:125)
- at org.eclipse.ui.internal.PartSite.registerContextMenu(PartSite.java:114)
- at org.eclipse.ui.internal.EditorSite.registerContextMenu(EditorSite.java:151)
- at org.eclipse.ui.texteditor.AbstractTextEditor.createPartControl(AbstractTextEditor.java:2673)
- at org.eclipse.ui.texteditor.StatusTextEditor.createPartControl(StatusTextEditor.java:53)
- at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.createPartControl(AbstractDecoratedTextEditor.java:368)
- at org.eclipse.cdt.internal.ui.editor.CEditor.createPartControl(CEditor.java:843)
- at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:596)
- at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:372)
- at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
- at org.eclipse.ui.internal.EditorAreaHelper.setVisibleEditor(EditorAreaHelper.java:263)
- at org.eclipse.ui.internal.EditorManager.setVisibleEditor(EditorManager.java:1420)
- at org.eclipse.ui.internal.EditorManager$5.run(EditorManager.java:1005)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.runtime.Platform.run(Platform.java:843)
- at org.eclipse.ui.internal.EditorManager.restoreState(EditorManager.java:1000)
- at org.eclipse.ui.internal.WorkbenchPage.restoreState(WorkbenchPage.java:2836)
- at org.eclipse.ui.internal.WorkbenchWindow.restoreState(WorkbenchWindow.java:1949)
- at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:2869)
- at org.eclipse.ui.internal.Workbench.access$14(Workbench.java:2817)
- at org.eclipse.ui.internal.Workbench$19.run(Workbench.java:1681)
- at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1421)
- at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1679)
- at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1650)
- at org.eclipse.ui.internal.Workbench$17.run(Workbench.java:1529)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1473)
- at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
- at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:702)
- at org.eclipse.ui.internal.Workbench.init(Workbench.java:1085)
- at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1847)
- at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
- at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
- at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:97)
- at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
- at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
- at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
- at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
- at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
- at java.lang.reflect.Method.invoke(Unknown Source)
- at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
- at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
- at org.eclipse.core.launcher.Main.run(Main.java:996)
- at org.eclipse.core.launcher.Main.main(Main.java:971)
-!SUBENTRY 1 org.eclipse.core.resources 4 274 2018-02-01 11:00:12.087
-!MESSAGE Resource is out of sync with the file system: /RTDSP/.launches/RTDSP.launch.
-
-!ENTRY org.eclipse.core.resources 4 566 2018-02-01 11:00:34.183
-!MESSAGE An error occurred while traversing resources.
-!STACK 0
-java.lang.IllegalArgumentException: ProducerArgument not null!!!
-
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildResource.addToArg(BuildResource.java:120)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildIOType.addResource(BuildIOType.java:64)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.addOutputs(BuildDescription.java:906)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.calculateOutputs(BuildDescription.java:1178)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.composeOutputs(BuildDescription.java:596)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.composeOutputs(BuildDescription.java:603)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.access$1(BuildDescription.java:496)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription$RcVisitor.doVisitFile(BuildDescription.java:206)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription$RcVisitor.visit(BuildDescription.java:136)
- at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:57)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:81)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:126)
- at org.eclipse.core.internal.resources.Resource.accept(Resource.java:67)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.initDescription(BuildDescription.java:681)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.init(BuildDescription.java:704)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.DefaultBuildDescriptionFactory.createBuildDescription(DefaultBuildDescriptionFactory.java:37)
- at org.eclipse.cdt.managedbuilder.buildmodel.BuildDescriptionManager.createBuildDescription(BuildDescriptionManager.java:81)
- at org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder.build(GeneratedMakefileBuilder.java:533)
- at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:603)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:167)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:201)
- at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:230)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:233)
- at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:307)
- at org.eclipse.core.internal.resources.Project.build(Project.java:88)
- at org.eclipse.cdt.launch.AbstractCLaunchDelegate.buildForLaunch(AbstractCLaunchDelegate.java:524)
- at com.ti.ccstudio.debug.core.launch.BaseCCELaunchDelegate.buildForLaunch(BaseCCELaunchDelegate.java:235)
- at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:636)
- at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:583)
- at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:779)
- at org.eclipse.debug.internal.ui.DebugUIPlugin$4.run(DebugUIPlugin.java:835)
- at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
-
-!ENTRY com.ti.ccstudio.debug.core 4 0 2018-02-01 11:00:37.893
-!MESSAGE Error: TMS320C671X: Error initializing emulator
-
-
-!ENTRY org.eclipse.core.resources 4 566 2018-02-01 11:38:53.511
-!MESSAGE An error occurred while traversing resources.
-!STACK 0
-java.lang.IllegalArgumentException: ProducerArgument not null!!!
-
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildResource.addToArg(BuildResource.java:120)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildIOType.addResource(BuildIOType.java:64)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.addOutputs(BuildDescription.java:906)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.calculateOutputs(BuildDescription.java:1178)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.composeOutputs(BuildDescription.java:596)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.composeOutputs(BuildDescription.java:603)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.access$1(BuildDescription.java:496)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription$RcVisitor.doVisitFile(BuildDescription.java:206)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription$RcVisitor.visit(BuildDescription.java:136)
- at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:57)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:81)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
- at org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:126)
- at org.eclipse.core.internal.resources.Resource.accept(Resource.java:67)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.initDescription(BuildDescription.java:681)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.BuildDescription.init(BuildDescription.java:704)
- at org.eclipse.cdt.managedbuilder.internal.buildmodel.DefaultBuildDescriptionFactory.createBuildDescription(DefaultBuildDescriptionFactory.java:37)
- at org.eclipse.cdt.managedbuilder.buildmodel.BuildDescriptionManager.createBuildDescription(BuildDescriptionManager.java:81)
- at org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder.build(GeneratedMakefileBuilder.java:533)
- at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:603)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:167)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:201)
- at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:230)
- at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
- at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:233)
- at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:307)
- at org.eclipse.core.internal.resources.Project.build(Project.java:88)
- at org.eclipse.cdt.launch.AbstractCLaunchDelegate.buildForLaunch(AbstractCLaunchDelegate.java:524)
- at com.ti.ccstudio.debug.core.launch.BaseCCELaunchDelegate.buildForLaunch(BaseCCELaunchDelegate.java:235)
- at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:636)
- at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:583)
- at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:779)
- at org.eclipse.debug.internal.ui.DebugUIPlugin$4.run(DebugUIPlugin.java:835)
- at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
diff --git a/lab4/.metadata/.plugins/com.ti.ccstudio.debug.registers.ui/expressions.xml b/lab4/.metadata/.plugins/com.ti.ccstudio.debug.registers.ui/expressions.xml
deleted file mode 100644
index 9ad272b..0000000
--- a/lab4/.metadata/.plugins/com.ti.ccstudio.debug.registers.ui/expressions.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<States>
-<Expressions/>
-</States> \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/101bb2c_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/101bb2c_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/101bb2c_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/10a5068_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/10a5068_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/10a5068_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1317541_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1317541_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1317541_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/15c960e_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/15c960e_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/15c960e_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/16f3621_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/16f3621_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/16f3621_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/17485ac_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/17485ac_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/17485ac_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1782f03_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1782f03_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1782f03_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1800bc_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1800bc_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1800bc_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a34544_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a34544_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a34544_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a709f1_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a709f1_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1a709f1_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1ae30a_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1ae30a_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1ae30a_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d0540c_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d0540c_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d0540c_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d121c7_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d121c7_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/1d121c7_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/87b2c8_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/87b2c8_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/87b2c8_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/b7b831_null.dat b/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/b7b831_null.dat
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/com.ti.dvt.datamodel/temp/b7b831_null.dat
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.cdt.core/.log b/lab4/.metadata/.plugins/org.eclipse.cdt.core/.log
deleted file mode 100644
index a846169..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.cdt.core/.log
+++ /dev/null
@@ -1 +0,0 @@
-*** SESSION Jan 30, 2018 16:50:50.502 ------------------------------------------
diff --git a/lab4/.metadata/.plugins/org.eclipse.cdt.core/RTDSP.1516884280118.pdom b/lab4/.metadata/.plugins/org.eclipse.cdt.core/RTDSP.1516884280118.pdom
deleted file mode 100644
index d6b3548..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.cdt.core/RTDSP.1516884280118.pdom
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c b/lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c
deleted file mode 100644
index 8b13789..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp b/lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp
deleted file mode 100644
index 8b13789..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/105abdf041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/105abdf041070018153483e962c7925e
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/105abdf041070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/8073ece4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/8073ece4e50100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/8073ece4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e089fc2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e089fc2ddf0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e089fc2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e0919779cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e0919779cd0100181ce89bcacea45786
deleted file mode 100644
index fa6ea95..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/0/e0919779cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,33 +0,0 @@
-# FIXED
-dsp_bios_cfg_c.obj: dsp_bios_cfg_c.c
-dsp_bios_cfg_c.obj: dsp_bios_cfg.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/std.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/tistdtypes.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/hst.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/pip.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/fxn.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/sts.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/swi.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/hwi.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/tsk.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/knl.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/atm.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/que.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/mem.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/prd.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/sem.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/obj.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/sys.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/trg.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/_hook.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/log.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/_log.h
-dsp_bios_cfg_c.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/trc.h
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/40691f2ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/40691f2ee10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/40691f2ee10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/b004f055e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/b004f055e20100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1/b004f055e20100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/10/704ae3aee50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/10/704ae3aee50100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/10/704ae3aee50100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ef0b99d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ef0b99d80100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/20ef0b99d80100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/a0a0870d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/a0a0870d7606001814daa3a49c232c18
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/12/a0a0870d7606001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/3014b998d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/3014b998d80100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/3014b998d80100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/30d5c20e7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/30d5c20e7506001814daa3a49c232c18
deleted file mode 100644
index c9908be..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/30d5c20e7506001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/8036c150dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/8036c150dd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/8036c150dd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0057cd3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0057cd3e10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0057cd3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/000eb0d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/000eb0d3e10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/000eb0d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/60428579cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/60428579cd0100181ce89bcacea45786
deleted file mode 100644
index da1e893..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/14/60428579cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 18 13:48:06 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iEventId :: 14
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/15/60b3357add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/15/60b3357add0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/15/60b3357add0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/16/108692d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/16/108692d57506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/16/108692d57506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/00e09779cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/00e09779cd0100181ce89bcacea45786
deleted file mode 100644
index 86aca88..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/00e09779cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,61 +0,0 @@
-# FIXED
-intio.obj: ../intio.c
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdlib.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/linkage.h
-intio.obj: C:/Github/RTDSP/lab3/RTDSP/Debug/dsp_bios_cfg.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/std.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/tistdtypes.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/hst.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/pip.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/fxn.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/sts.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/swi.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/hwi.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/tsk.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/knl.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/atm.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/que.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/mem.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/prd.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/sem.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/obj.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/sys.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/trg.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stddef.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/_hook.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/log.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/_log.h
-intio.obj: C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include/trc.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include/dsk6713.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_chip.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_stdinc.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_stdinchal.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/tistdtypes.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_chiphal.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_emifhal.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_chip.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_irq.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_irqhal.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_timer.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_timerhal.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include/dsk6713_aic23.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_mcbsp.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include/csl_mcbsphal.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/math.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/float.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/access.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/mathf.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/unaccess.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/mathl.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/unaccess.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include/helper_functions_ISR.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/math.h
-intio.obj: C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include/helper_functions_polling.h
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/d05cb9d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/d05cb9d3e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/17/d05cb9d3e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/19/f04dce2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/19/f04dce2ddf0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/19/f04dce2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/1022fd98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/1022fd98d80100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/1022fd98d80100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/40122e7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/40122e7add0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/40122e7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/a023afd3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/a023afd3e10100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/a023afd3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c038734c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c038734c7506001814daa3a49c232c18
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c038734c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/f0d3fc98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/f0d3fc98d80100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1b/f0d3fc98d80100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/8090337add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/8090337add0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/8090337add0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/b01c9779cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/b01c9779cd0100181ce89bcacea45786
deleted file mode 100644
index f13e3eb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1d/b01c9779cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header File */
-#include "dsp_bios_cfg.h"
-
-/* Config Structures */
-/* Handles */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/2000dd3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/2000dd3a45070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/2000dd3a45070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/906884cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/906884cc7506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/906884cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b0ee98d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b0ee98d57506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b0ee98d57506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1f/20715f203f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1f/20715f203f070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/1f/20715f203f070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/00762d7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/00762d7add0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/00762d7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/008ce4157506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/008ce4157506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/008ce4157506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/2049afcc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/2049afcc7506001814daa3a49c232c18
deleted file mode 100644
index d2a1f93..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/2049afcc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,1755 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Wed Jan 31 10:55:52 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a900
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd27 000342d9 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002360
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000320 intio.obj (.text)
- 00005180 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005460 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056a0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005860 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a00 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005b80 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d00 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e40 00000120 : sinit.obj (.text:_call_dtors)
- 00005f60 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006060 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006160 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00006260 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006340 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006420 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 000064e0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006580 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 000065c0 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006600 00000040 : divf.obj (.text:___isnanf)
- 00006640 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006660 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006680 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066a0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 000066c0 00000020 : _lock.obj (.text:__register_lock)
- 000066e0 00000020 : _lock.obj (.text:__register_unlock)
- 00006700 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006720 00001754
- 00006720 00000810 intio.obj (.cinit)
- 00006f30 00000564 dsp_bios_cfg.obj (.cinit)
- 00007494 00000004 --HOLE-- [fill = 0]
- 00007498 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007704 00000004 --HOLE-- [fill = 0]
- 00007708 000001a4 : knl.o67 (.cinit)
- 000078ac 00000004 --HOLE-- [fill = 0]
- 000078b0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 000079dc 00000004 --HOLE-- [fill = 0]
- 000079e0 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007a90 00000070 : tsk.o67 (.cinit)
- 00007b00 00000060 : tsk_stup.o67 (.cinit)
- 00007b60 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bbc 00000004 --HOLE-- [fill = 0]
- 00007bc0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c14 00000004 --HOLE-- [fill = 0]
- 00007c18 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c64 00000004 --HOLE-- [fill = 0]
- 00007c68 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cb4 00000004 --HOLE-- [fill = 0]
- 00007cb8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007cec 00000004 --HOLE-- [fill = 0]
- 00007cf0 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d20 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d4c 00000004 --HOLE-- [fill = 0]
- 00007d50 0000002c rts6700.lib : exit.obj (.cinit)
- 00007d7c 00000004 --HOLE-- [fill = 0]
- 00007d80 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007da4 00000004 --HOLE-- [fill = 0]
- 00007da8 0000001c : sys.o67 (.cinit)
- 00007dc4 00000004 --HOLE-- [fill = 0]
- 00007dc8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007de4 00000004 --HOLE-- [fill = 0]
- 00007de8 0000001c : atexit.obj (.cinit)
- 00007e04 00000004 --HOLE-- [fill = 0]
- 00007e08 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e20 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e30 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e3c 00000004 --HOLE-- [fill = 0]
- 00007e40 0000000c : idl_busy.o67 (.cinit)
- 00007e4c 00000004 --HOLE-- [fill = 0]
- 00007e50 0000000c : knl_swit.o67 (.cinit)
- 00007e5c 00000004 --HOLE-- [fill = 0]
- 00007e60 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007e74 00000004
- 00007e74 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007e78 000014c8 UNINITIALIZED
- 00007e78 00000fb8 intio.obj (.far)
- 00008e30 00000188 rts6700.lib : atexit.obj (.far)
- 00008fb8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090ac 000000d8 bios.a67 : knl.o67 (.far)
- 00009184 0000005c : tsk.o67 (.far)
- 000091e0 00000054 : obj_init.o67 (.far)
- 00009234 00000050 : tsk_stup.o67 (.far)
- 00009284 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092bc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 000092e4 00000020 bios.a67 : sys.o67 (.far)
- 00009304 00000010 : knl_tick.o67 (.far)
- 00009314 0000000c : utl_putc.o67 (.far)
- 00009320 0000000c rts6700.lib : exit.obj (.far)
- 0000932c 00000008 : _lock.obj (.far)
- 00009334 00000008 : divf.obj (.far)
- 0000933c 00000004 : sinit.obj (.far)
-
-.rtdx_text
-* 0 00009340 00000ea0
- 00009340 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009740 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009a80 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009d80 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009ec0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fa0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a020 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a080 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a0e0 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a120 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a160 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a180 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1a0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a1c0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a1e0 0000044c UNINITIALIZED
- 0000a1e0 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a5f0 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a610 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 0000a62c 00000010 UNINITIALIZED
- 0000a62c 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 0000a640 00000420
- 0000a640 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a900 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a9c0 00000080 : tsk_init.o67 (.sysinit)
- 0000aa40 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aa60 00000400 UNINITIALIZED
- 0000aa60 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000ae60 00000400 UNINITIALIZED
- 0000ae60 00000400 --HOLE--
-
-.bss 0 0000b260 00000342 UNINITIALIZED
- 0000b260 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b360 000000cc : biosdata.o67 (.bss)
- 0000b42c 0000009c : swi.o67 (.bss)
- 0000b4c8 00000048 : knl.o67 (.bss)
- 0000b510 00000018 : hwi.o67 (.bss)
- 0000b528 00000018 dsp_bios_cfg.obj (.bss)
- 0000b540 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b558 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b568 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b574 00000008 : clk_data.o67 (.bss)
- 0000b57c 00000008 : sys.o67 (.bss)
- 0000b584 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b58c 00000008 intio.obj (.bss)
- 0000b594 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b598 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b59c 00000004 : idl_busy.o67 (.bss)
- 0000b5a0 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5a4 00000200
- 0000b5a4 00000200 --HOLE-- [fill = 00000000]
-
-.gblinit 0 0000b7a4 00000040
- 0000b7a4 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.log 0 0000b7e4 00000018
- 0000b7e4 00000018 dsp_bios_cfg.obj (.log)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.hst 0 0000bc24 0000003c UNINITIALIZED
- 0000bc24 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bc60 00000030
- 0000bc60 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bc90 0000002c UNINITIALIZED
- 0000bc90 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcbc 00000028
- 0000bcbc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idl 0 0000bce4 00000010 UNINITIALIZED
- 0000bce4 00000010 dsp_bios_cfg.obj (.idl)
-
-.idlcal 0 0000bcf4 00000010 UNINITIALIZED
- 0000bcf4 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd04 00000010 UNINITIALIZED
- 0000bd04 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd14 0000000c
- 0000bd14 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd18 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd1c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd20 0000000c
- 0000bd20 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd2c 00000008 UNINITIALIZED
- 0000bd2c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b260 $bss
-0000b260 .bss
-00000000 .data
-000043c0 .text
-0000a7e4 BIOS$$CLKOFF
-0000a7a4 BIOS$$CLKON
-0000a640 BIOS_init
-0000a84c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd2c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b388 CLK_D_idletime
-0000b384 CLK_D_isrhook
-0000b380 CLK_D_tabbeg
-0000b37c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b378 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd30 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a28 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd28 GBL_initdone
-0000ae60 GBL_stackbeg
-0000b25f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc24 HST_A_TABBEG
-0000bc60 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b3f4 HST_D_chanmask
-0000b3f8 HST_D_tabbeg
-0000b3fc HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b520 HWI_D_bss
-0000b524 HWI_D_ccmask
-0000b510 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bcf4 IDL_A_CALBEG
-0000bce4 IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b59c IDL_D_busyObj
-0000b368 IDL_D_calbeg
-0000b364 IDL_D_calibrate
-0000b360 IDL_D_tabbeg
-0000bcf0 IDL_END
-0000bd00 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bc84 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bc80 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000bce4 IDL_cpuLoad
-0000bcf4 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bc90 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bc64 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bc60 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000bce8 LNK_dataPump
-0000bcf8 LNK_dataPump$
-0000b544 LNK_dspFrameReadyMask
-0000b540 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b54c LNK_readDone
-0000b550 LNK_readFail
-0000b548 LNK_readPend
-00000370 LNK_rrloop
-0000b554 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b7e4 LOG_A_TABBEG
-0000b7fc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b36c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b7e4 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b370 PIP_D_tabbeg
-0000b374 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3b0 PRD_D_cur
-0000b3b4 PRD_D_elapsed
-0000b3b8 PRD_D_prevtim
-0000b3bc PRD_D_scalar
-0000b3c0 PRD_D_swihandle
-0000b3c4 PRD_D_tabbeg
-0000b3c8 PRD_D_tablen
-0000b3cc PRD_D_thook
-0000b3ac PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd2c PRD_clock
-00000001 QUE$
-0000b3d0 RTA_D_fromHost
-0000b3d8 RTA_D_logval
-0000b3e8 RTA_D_stsval
-0000b3d4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000bcec RTA_dispatcher
-0000bcfc RTA_dispatcher$
-00001f28 RTA_execute
-0000bc28 RTA_fromHost
-0000a62c RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b528 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc30 RTA_fromHost$rtdx
-0000bc44 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b534 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc4c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bc60 STS_A_TABBEG
-0000bc90 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bc90 SWI_A_TABBEG
-0000bcbc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b444 SWI_D_curfxn
-0000b434 SWI_D_curmask
-0000b440 SWI_D_curmbox
-0000b438 SWI_D_curset
-0000b430 SWI_D_execaddr
-0000b44c SWI_D_inswi
-0000b43c SWI_D_lock
-0000b448 SWI_D_rdybeg
-0000b450 SWI_D_rdytab
-0000b42c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd04 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd24 TRC_R_mask
-0000bd20 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aa60 TSK_idle$stack
-0000adf8 TSK_idle$stkptr
-0000bc74 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bc70 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a640 _BIOS_init
-0000a84c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b574 _CLK_DFLTMICROSECS
-0000b3a8 _CLK_D_countspms
-0000b39c _CLK_D_dirty
-0000b578 _CLK_D_microseconds
-0000b3a0 _CLK_D_prd
-0000b3a4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b38c _CLK_htimeDiv
-0000b390 _CLK_htimeMult
-0000b594 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b394 _CLK_ltimeDiv
-0000b398 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e08 _Config
-0000b584 _DSK6713_AIC23_codeccontrolhandle
-0000b588 _DSK6713_AIC23_codecdatahandle
-00005c6c _DSK6713_AIC23_config
-00005180 _DSK6713_AIC23_openCodec
-00005c48 _DSK6713_AIC23_rget
-00005b80 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5a0 _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b404 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b408 _GBL_freq
-00004320 _GBL_getVersion
-0000b400 _GBL_procId
-00005a28 _GBL_setPLLto225MHz
-0000bc24 _HST_A_TABBEG
-0000bc60 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b51c _HWI_D_inhwi
-0000b510 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b258 _HWI_STKBOTTOM
-0000ae60 _HWI_STKTOP
-0000b510 _HWI_data
-00004020 _HWI_disable
-0000b260 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b590 _H_Codec
-0000bc84 _IDL_busyObj
-0000bce4 _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006580 _IRQ_enable
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-000056a0 _IRQ_map
-00006680 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b4d0 _KNL_alarm
-00003440 _KNL_check
-0000b4f4 _KNL_curqueue
-0000b4e4 _KNL_curtask
-0000b4ec _KNL_curtime
-0000914c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b50c _KNL_idlefxn
-0000b4d8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b4f8 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b4e8 _KNL_prevtask
-0000b4dc _KNL_priority
-000090ac _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b4e0 _KNL_set
-0000b4d4 _KNL_setpri
-0000bc90 _KNL_swi
-0000b4f0 _KNL_swiptr
-00002cec _KNL_switch
-0000b500 _KNL_tcreatefxn
-0000b504 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b508 _KNL_treadyfxn
-0000b4fc _KNL_tswitchfxn
-0000b4c8 _KNL_wFlag
-0000b4cc _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000bce8 _LNK_dataPump
-0000b544 _LNK_dspFrameReadyMask
-0000b540 _LNK_dspFrameRequestMask
-0000b54c _LNK_readDone
-0000b550 _LNK_readFail
-0000b548 _LNK_readPend
-0000b554 _LNK_writeFail
-0000b7e4 _LOG_A_TABBEG
-0000b7fc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b36c _LOG_D_system
-00003ea0 _LOG_event
-0000b7e4 _LOG_system
-00005f60 _MCBSP_open
-00005860 _MCBSP_reset
-00006060 _MCBSP_start
-0000b40c _MEM_D_NUMSEGMENTS
-0000b414 _MEM_D_freelist
-0000b418 _MEM_D_lockaddr
-0000b410 _MEM_D_memtab
-0000b41c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa40 _OBJ_init
-00009218 _OBJ_segtab
-000091e0 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3ac _PRD_D_tick
-0000bd2c _PRD_clock
-0000bcec _RTA_dispatcher
-0000bc28 _RTA_fromHost
-0000bc44 _RTA_toHost
-0000a1e0 _RTDX_Buffer
-0000a5ec _RTDX_Buffer_End
-0000a020 _RTDX_Buffer_Initialize
-0000a160 _RTDX_Buffer_Read
-0000a080 _RTDX_Buffer_ReadCB
-0000a0e0 _RTDX_Buffer_Size
-0000a5e8 _RTDX_Buffer_Start
-0000a180 _RTDX_Buffer_Write
-00009740 _RTDX_Buffer_WriteCB
-0000a120 _RTDX_Final_RT_Monitor
-00009fa0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a1c0 _RTDX_Mask_IER
-00009d80 _RTDX_Mon_Queue
-00009340 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a5fc _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bc60 _STS_A_TABBEG
-0000bc90 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b444 _SWI_D_curfxn
-0000b434 _SWI_D_curmask
-0000b438 _SWI_D_curset
-0000b430 _SWI_D_execaddr
-0000b44c _SWI_D_inswi
-0000b43c _SWI_D_lock
-0000b448 _SWI_D_rdybeg
-0000b42c _SWI_D_runaddr
-0000b42c _SWI_data
-00000e50 _SWI_post
-0000b420 _SYS
-0000b5a4 _SYS_PUTCBEG
-0000b7a3 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-000092e4 _SYS_exitStack
-0000b57c _SYS_exitStackPtr
-0000b580 _SYS_exitStackTop
-0000bd24 _TRC_R_mask
-0000b570 _TSK
-00009184 _TSK_ATTRS
-000091a0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000a9c0 _TSK_init
-0000b568 _TSK_nTasks
-0000b56c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091c0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b428 __HOOK_NUMHOOKS
-0000b424 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090a4 __IRQ_dispatchTable
-00008fe0 __IRQ_eventTable
-00006700 __IRQ_hookFetchPacket
-00009064 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092b4 __MCBSP_hDev0
-000092b8 __MCBSP_hDev1
-0000925c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009234 __TSK_mutex
-00009328 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-000065c0 ___add_dtor
-00008e30 ___atexit_func_id__
-ffffffff ___binit__
-0000b260 ___bss__
-ffffffff ___c_args__
-00006720 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5a2 ___end__
-00006720 ___etext__
-0000bd14 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009320 __cleanup_ptr
-000043c0 __divf
-00009324 __dtors_ptr
-00006260 __frcmpyf_div
-0000932c __lock
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-0000ae60 __stack
-00005d00 __strasgi
-00009330 __unlock
-00006160 _atexit
-00007e78 _b
-00008640 _buffer
-0000a900 _c_int00
-00005e40 _call_dtors
-0000933c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-00005460 _memcpy
-000063bc _mono_read_16Bit
-00006394 _mono_write_16Bit
-000050a4 _non_circ_fir
-0000b58c _ptr
-0000b560 _rtdxNullChanCnt
-0000b564 _rtdxNullFuncCnt
-0000a5f0 _rtdx_buffer_state
-0000a610 _rtdx_mon_state
-00006368 _stereo_read_16Bit
-00006340 _stereo_write_16Bit
-00005a00 _wait500nS
-ffffffff binit
-00006720 cinit
-00000000 edata
-0000b5a2 end
-00006720 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd14 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050a4 _non_circ_fir
-00005180 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-00005460 _memcpy
-000056a0 _IRQ_map
-00005860 _MCBSP_reset
-00005a00 _wait500nS
-00005a28 GBL_USERINITFXN
-00005a28 _GBL_setPLLto225MHz
-00005b80 _DSK6713_AIC23_rset
-00005c48 _DSK6713_AIC23_rget
-00005c6c _DSK6713_AIC23_config
-00005d00 __strasgi
-00005e40 _call_dtors
-00005f60 _MCBSP_open
-00006060 _MCBSP_start
-00006160 _atexit
-00006260 __frcmpyf_div
-00006340 _stereo_write_16Bit
-00006368 _stereo_read_16Bit
-00006394 _mono_write_16Bit
-000063bc _mono_read_16Bit
-00006580 _IRQ_enable
-000065c0 ___add_dtor
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-00006680 _IRQ_nmiEnable
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-00006700 __IRQ_hookFetchPacket
-00006720 ___cinit__
-00006720 ___etext__
-00006720 cinit
-00006720 etext
-00007e78 _b
-00008640 _buffer
-00008e08 _Config
-00008e30 ___atexit_func_id__
-00008fe0 __IRQ_eventTable
-00009064 __IRQ_intTable
-000090a4 __IRQ_dispatchTable
-000090ac _KNL_queues
-0000914c _KNL_dummy
-00009184 _TSK_ATTRS
-000091a0 _TSK_config
-000091c0 _TSK_timerSem
-000091e0 _OBJ_table
-00009218 _OBJ_segtab
-00009234 __TSK_mutex
-0000925c __MEM_mutex
-000092b4 __MCBSP_hDev0
-000092b8 __MCBSP_hDev1
-000092e4 _SYS_exitStack
-00009320 __cleanup_ptr
-00009324 __dtors_ptr
-00009328 ___TI_enable_exit_profile_output
-0000932c __lock
-00009330 __unlock
-0000933c _dtors
-00009340 _RTDX_Poll
-00009740 _RTDX_Buffer_WriteCB
-00009d80 _RTDX_Mon_Queue
-00009fa0 _RTDX_Init_RT_Monitor
-0000a020 _RTDX_Buffer_Initialize
-0000a080 _RTDX_Buffer_ReadCB
-0000a0e0 _RTDX_Buffer_Size
-0000a120 _RTDX_Final_RT_Monitor
-0000a160 _RTDX_Buffer_Read
-0000a180 _RTDX_Buffer_Write
-0000a1c0 _RTDX_Mask_IER
-0000a1e0 _RTDX_Buffer
-0000a5e8 _RTDX_Buffer_Start
-0000a5ec _RTDX_Buffer_End
-0000a5f0 _rtdx_buffer_state
-0000a5fc _RTDX_writing
-0000a610 _rtdx_mon_state
-0000a62c RTA_fromHost$buf
-0000a640 BIOS_init
-0000a640 _BIOS_init
-0000a7a4 BIOS$$CLKON
-0000a7e4 BIOS$$CLKOFF
-0000a84c BIOS_start
-0000a84c _BIOS_start
-0000a900 _c_int00
-0000a9c0 _TSK_init
-0000aa40 _OBJ_init
-0000aa60 TSK_idle$stack
-0000adf8 TSK_idle$stkptr
-0000ae60 GBL_stackbeg
-0000ae60 _HWI_STKTOP
-0000ae60 __stack
-0000b258 _HWI_STKBOTTOM
-0000b25f GBL_stackend
-0000b260 $bss
-0000b260 .bss
-0000b260 _HWI_dispatchTab
-0000b260 ___bss__
-0000b360 IDL_D_tabbeg
-0000b364 IDL_D_calibrate
-0000b368 IDL_D_calbeg
-0000b36c LOG_D_system
-0000b36c _LOG_D_system
-0000b370 PIP_D_tabbeg
-0000b374 PIP_D_tablen
-0000b378 CLK_R_time
-0000b37c CLK_D_timefxn
-0000b380 CLK_D_tabbeg
-0000b384 CLK_D_isrhook
-0000b388 CLK_D_idletime
-0000b38c _CLK_htimeDiv
-0000b390 _CLK_htimeMult
-0000b394 _CLK_ltimeDiv
-0000b398 _CLK_ltimeMult
-0000b39c _CLK_D_dirty
-0000b3a0 _CLK_D_prd
-0000b3a4 _CLK_D_tddr
-0000b3a8 _CLK_D_countspms
-0000b3ac PRD_D_tick
-0000b3ac _PRD_D_tick
-0000b3b0 PRD_D_cur
-0000b3b4 PRD_D_elapsed
-0000b3b8 PRD_D_prevtim
-0000b3bc PRD_D_scalar
-0000b3c0 PRD_D_swihandle
-0000b3c4 PRD_D_tabbeg
-0000b3c8 PRD_D_tablen
-0000b3cc PRD_D_thook
-0000b3d0 RTA_D_fromHost
-0000b3d4 RTA_D_toHost
-0000b3d8 RTA_D_logval
-0000b3e8 RTA_D_stsval
-0000b3f4 HST_D_chanmask
-0000b3f8 HST_D_tabbeg
-0000b3fc HST_D_tabend
-0000b400 _GBL_procId
-0000b404 _GBL_clkIn
-0000b408 _GBL_freq
-0000b40c _MEM_D_NUMSEGMENTS
-0000b410 _MEM_D_memtab
-0000b414 _MEM_D_freelist
-0000b418 _MEM_D_lockaddr
-0000b41c _MEM_D_unlockaddr
-0000b420 _SYS
-0000b424 __HOOK_knlId
-0000b428 __HOOK_NUMHOOKS
-0000b42c SWI_D_runaddr
-0000b42c _SWI_D_runaddr
-0000b42c _SWI_data
-0000b430 SWI_D_execaddr
-0000b430 _SWI_D_execaddr
-0000b434 SWI_D_curmask
-0000b434 _SWI_D_curmask
-0000b438 SWI_D_curset
-0000b438 _SWI_D_curset
-0000b43c SWI_D_lock
-0000b43c _SWI_D_lock
-0000b440 SWI_D_curmbox
-0000b444 SWI_D_curfxn
-0000b444 _SWI_D_curfxn
-0000b448 SWI_D_rdybeg
-0000b448 _SWI_D_rdybeg
-0000b44c SWI_D_inswi
-0000b44c _SWI_D_inswi
-0000b450 SWI_D_rdytab
-0000b4c8 _KNL_wFlag
-0000b4cc _KNL_wList
-0000b4d0 _KNL_alarm
-0000b4d4 _KNL_setpri
-0000b4d8 _KNL_inactive
-0000b4dc _KNL_priority
-0000b4e0 _KNL_set
-0000b4e4 _KNL_curtask
-0000b4e8 _KNL_prevtask
-0000b4ec _KNL_curtime
-0000b4f0 _KNL_swiptr
-0000b4f4 _KNL_curqueue
-0000b4f8 _KNL_maxqueue
-0000b4fc _KNL_tswitchfxn
-0000b500 _KNL_tcreatefxn
-0000b504 _KNL_tdeletefxn
-0000b508 _KNL_treadyfxn
-0000b50c _KNL_idlefxn
-0000b510 HWI_D_spsave
-0000b510 _HWI_D_spsave
-0000b510 _HWI_data
-0000b51c _HWI_D_inhwi
-0000b520 HWI_D_bss
-0000b524 HWI_D_ccmask
-0000b528 RTA_fromHost$pipe$dtab
-0000b534 RTA_toHost$pipe$dtab
-0000b540 LNK_dspFrameRequestMask
-0000b540 _LNK_dspFrameRequestMask
-0000b544 LNK_dspFrameReadyMask
-0000b544 _LNK_dspFrameReadyMask
-0000b548 LNK_readPend
-0000b548 _LNK_readPend
-0000b54c LNK_readDone
-0000b54c _LNK_readDone
-0000b550 LNK_readFail
-0000b550 _LNK_readFail
-0000b554 LNK_writeFail
-0000b554 _LNK_writeFail
-0000b560 _rtdxNullChanCnt
-0000b564 _rtdxNullFuncCnt
-0000b568 _TSK_nTasks
-0000b56c _TSK_pid
-0000b570 _TSK
-0000b574 _CLK_DFLTMICROSECS
-0000b578 _CLK_D_microseconds
-0000b57c _SYS_exitStackPtr
-0000b580 _SYS_exitStackTop
-0000b584 _DSK6713_AIC23_codeccontrolhandle
-0000b588 _DSK6713_AIC23_codecdatahandle
-0000b58c _ptr
-0000b590 _H_Codec
-0000b594 _CLK_htimePerLtime
-0000b59c IDL_D_busyObj
-0000b5a0 _DSK6713_version
-0000b5a2 ___end__
-0000b5a2 end
-0000b5a4 _SYS_PUTCBEG
-0000b7a3 _SYS_PUTCEND
-0000b7e4 LOG_A_TABBEG
-0000b7e4 LOG_system
-0000b7e4 _LOG_A_TABBEG
-0000b7e4 _LOG_system
-0000b7fc LOG_A_TABEND
-0000b7fc _LOG_A_TABEND
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc24 HST_A_TABBEG
-0000bc24 _HST_A_TABBEG
-0000bc28 RTA_fromHost
-0000bc28 _RTA_fromHost
-0000bc30 RTA_fromHost$rtdx
-0000bc44 RTA_toHost
-0000bc44 _RTA_toHost
-0000bc4c RTA_toHost$rtdx
-0000bc60 HST_A_TABEND
-0000bc60 KNL_swi$sts$stsobj
-0000bc60 STS_A_TABBEG
-0000bc60 _HST_A_TABEND
-0000bc60 _STS_A_TABBEG
-0000bc64 KNL_swi$sts
-0000bc70 TSK_idle$sts$stsobj
-0000bc74 TSK_idle$sts
-0000bc80 IDL_busyObj$stsobj
-0000bc84 IDL_busyObj
-0000bc84 _IDL_busyObj
-0000bc90 KNL_swi
-0000bc90 STS_A_TABEND
-0000bc90 SWI_A_TABBEG
-0000bc90 _KNL_swi
-0000bc90 _STS_A_TABEND
-0000bcbc SWI_A_TABEND
-0000bce4 IDL_A_TABBEG
-0000bce4 IDL_cpuLoad
-0000bce4 _IDL_cpuLoad
-0000bce8 LNK_dataPump
-0000bce8 _LNK_dataPump
-0000bcec RTA_dispatcher
-0000bcec _RTA_dispatcher
-0000bcf0 IDL_END
-0000bcf4 IDL_A_CALBEG
-0000bcf4 IDL_cpuLoad$
-0000bcf8 LNK_dataPump$
-0000bcfc RTA_dispatcher$
-0000bd00 IDL_END$
-0000bd04 SYS$config
-0000bd14 ___pinit__
-0000bd14 pinit
-0000bd20 TRC_cinit
-0000bd24 TRC_R_mask
-0000bd24 _TRC_R_mask
-0000bd28 GBL_initdone
-0000bd2c CLK_A_TABBEG
-0000bd2c PRD_clock
-0000bd2c _PRD_clock
-0000bd30 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[718 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/d02ed3c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/d02ed3c9e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2/d02ed3c9e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/20f2a96bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/20f2a96bdd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/20f2a96bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/30f287f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/30f287f041070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/30f287f041070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/4003fb2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/4003fb2ddf0100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/4003fb2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/90f7132ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/90f7132ee10100181ce89bcacea45786
deleted file mode 100644
index a0b8d5e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/20/90f7132ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:04:41 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/10f7a2c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/10f7a2c9e10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/10f7a2c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/507debf244070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/507debf244070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/21/507debf244070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/d0cbd93a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/d0cbd93a45070018153483e962c7925e
deleted file mode 100644
index 044c84e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/d0cbd93a45070018153483e962c7925e
+++ /dev/null
@@ -1,1761 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Feb 01 11:42:17 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000b080
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000c497 00033b69 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002ac0
- 000043c0 00000900 rts6700.lib : divd.obj (.text:__divd)
- 00004cc0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00005140 00000380 rts6700.lib : frcmpyd_div.obj (.text:__frcmpyd_div)
- 000054c0 00000360 intio.obj (.text)
- 00005820 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005b00 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005d40 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005f00 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 000060a0 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00006220 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 000063a0 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 000064e0 00000120 : sinit.obj (.text:_call_dtors)
- 00006600 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006700 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006800 00000100 rts6700.lib : remi.obj (.text:__remi)
- 00006900 00000100 : atexit.obj (.text:_atexit)
- 00006a00 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006ae0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006ba0 000000a0 rts6700.lib : mpyll.obj (.text:__mpyll)
- 00006c40 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006ce0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006d20 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006d60 00000040 : divd.obj (.text:___isnan)
- 00006da0 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006dc0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006de0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00006e00 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006e20 00000020 : _lock.obj (.text:__register_lock)
- 00006e40 00000020 : _lock.obj (.text:__register_unlock)
- 00006e60 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006e80 00001764
- 00006e80 00000820 intio.obj (.cinit)
- 000076a0 00000564 dsp_bios_cfg.obj (.cinit)
- 00007c04 00000004 --HOLE-- [fill = 0]
- 00007c08 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007e74 00000004 --HOLE-- [fill = 0]
- 00007e78 000001a4 : knl.o67 (.cinit)
- 0000801c 00000004 --HOLE-- [fill = 0]
- 00008020 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 0000814c 00000004 --HOLE-- [fill = 0]
- 00008150 000000b0 bios.a67 : swi.o67 (.cinit)
- 00008200 00000070 : tsk.o67 (.cinit)
- 00008270 00000060 : tsk_stup.o67 (.cinit)
- 000082d0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 0000832c 00000004 --HOLE-- [fill = 0]
- 00008330 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00008384 00000004 --HOLE-- [fill = 0]
- 00008388 0000004c bios.a67 : rta.o67 (.cinit)
- 000083d4 00000004 --HOLE-- [fill = 0]
- 000083d8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00008424 00000004 --HOLE-- [fill = 0]
- 00008428 00000034 bios.a67 : hwi.o67 (.cinit)
- 0000845c 00000004 --HOLE-- [fill = 0]
- 00008460 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00008490 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 000084bc 00000004 --HOLE-- [fill = 0]
- 000084c0 0000002c rts6700.lib : exit.obj (.cinit)
- 000084ec 00000004 --HOLE-- [fill = 0]
- 000084f0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00008514 00000004 --HOLE-- [fill = 0]
- 00008518 0000001c : sys.o67 (.cinit)
- 00008534 00000004 --HOLE-- [fill = 0]
- 00008538 0000001c rts6700.lib : _lock.obj (.cinit)
- 00008554 00000004 --HOLE-- [fill = 0]
- 00008558 0000001c : atexit.obj (.cinit)
- 00008574 00000004 --HOLE-- [fill = 0]
- 00008578 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00008590 00000010 rts6700.lib : divd.obj (.cinit)
- 000085a0 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 000085ac 00000004 --HOLE-- [fill = 0]
- 000085b0 0000000c : idl_busy.o67 (.cinit)
- 000085bc 00000004 --HOLE-- [fill = 0]
- 000085c0 0000000c : knl_swit.o67 (.cinit)
- 000085cc 00000004 --HOLE-- [fill = 0]
- 000085d0 0000000c rts6700.lib : sinit.obj (.cinit)
- 000085dc 00000004 --HOLE-- [fill = 0]
- 000085e0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 000085e4 00000004
- 000085e4 00000004 --HOLE-- [fill = 0]
-
-.far 0 000085e8 000014c8 UNINITIALIZED
- 000085e8 00000fb8 intio.obj (.far)
- 000095a0 00000188 rts6700.lib : atexit.obj (.far)
- 00009728 000000f4 csl6713.lib : csl_irq.obj (.far)
- 0000981c 000000d8 bios.a67 : knl.o67 (.far)
- 000098f4 0000005c : tsk.o67 (.far)
- 00009950 00000054 : obj_init.o67 (.far)
- 000099a4 00000050 : tsk_stup.o67 (.far)
- 000099f4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 00009a2c 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009a54 00000020 bios.a67 : sys.o67 (.far)
- 00009a74 00000010 : knl_tick.o67 (.far)
- 00009a84 0000000c : utl_putc.o67 (.far)
- 00009a90 0000000c rts6700.lib : exit.obj (.far)
- 00009a9c 00000008 : _lock.obj (.far)
- 00009aa4 00000008 : divd.obj (.far)
- 00009aac 00000004 : sinit.obj (.far)
-
-.hst1 0 00009ab0 00000010 UNINITIALIZED
- 00009ab0 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009ac0 00000ea0
- 00009ac0 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009ec0 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 0000a200 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 0000a500 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 0000a640 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 0000a720 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a7a0 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a800 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a860 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a8a0 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a8e0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a900 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a920 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a940 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a960 0000044c UNINITIALIZED
- 0000a960 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000ad70 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000ad90 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000adac 00000010 UNINITIALIZED
- 0000adac 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000adc0 00000420
- 0000adc0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000b080 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000b140 00000080 : tsk_init.o67 (.sysinit)
- 0000b1c0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000b1e0 00000400 UNINITIALIZED
- 0000b1e0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000b5e0 00000400 UNINITIALIZED
- 0000b5e0 00000400 --HOLE--
-
-.bss 0 0000b9e0 00000342 UNINITIALIZED
- 0000b9e0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000bae0 000000cc : biosdata.o67 (.bss)
- 0000bbac 0000009c : swi.o67 (.bss)
- 0000bc48 00000048 : knl.o67 (.bss)
- 0000bc90 00000018 : hwi.o67 (.bss)
- 0000bca8 00000018 dsp_bios_cfg.obj (.bss)
- 0000bcc0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000bcd8 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000bce8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000bcf4 00000008 : clk_data.o67 (.bss)
- 0000bcfc 00000008 : sys.o67 (.bss)
- 0000bd04 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000bd0c 00000008 intio.obj (.bss)
- 0000bd14 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000bd18 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000bd1c 00000004 : idl_busy.o67 (.bss)
- 0000bd20 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000bd24 00000200
- 0000bd24 00000200 --HOLE-- [fill = 00000000]
-
-.pip 0 0000bf24 000000c8 UNINITIALIZED
- 0000bf24 000000c8 dsp_bios_cfg.obj (.pip)
-
-.idlcal 0 0000bfec 00000010 UNINITIALIZED
- 0000bfec 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.LOG_system$buf
-* 0 0000c000 00000100 UNINITIALIZED
- 0000c000 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000c100 00000100 UNINITIALIZED
- 0000c100 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000c200 000000f9
- 0000c200 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000c24e 00000002 --HOLE-- [fill = 0]
- 0000c250 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000c290 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000c2b3 00000022 : utl_doer.o67 (.const)
- 0000c2d5 00000003 --HOLE-- [fill = 0]
- 0000c2d8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000c2f8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000c2f9 0000003f COPY SECTION
- 0000c2f9 0000003f dsp_bios_cfg.obj (.printf)
-
-.tsk 0 0000c2fc 00000060 UNINITIALIZED
- 0000c2fc 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000c35c 00000040
- 0000c35c 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000c39c 0000003c UNINITIALIZED
- 0000c39c 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000c3d8 00000030
- 0000c3d8 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000c408 0000002c UNINITIALIZED
- 0000c408 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000c434 00000028
- 0000c434 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000c45c 00000018
- 0000c45c 00000018 dsp_bios_cfg.obj (.log)
-
-.sys 0 0000c474 00000010 UNINITIALIZED
- 0000c474 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000c484 0000000c
- 0000c484 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000c488 00000004 : rtdx_mon.o62 (.pinit)
- 0000c48c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000c490 0000000c
- 0000c490 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000c49c 00000008 UNINITIALIZED
- 0000c49c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b9e0 $bss
-0000b9e0 .bss
-00000000 .data
-000043c0 .text
-0000af64 BIOS$$CLKOFF
-0000af24 BIOS$$CLKON
-0000adc0 BIOS_init
-0000afcc BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000c49c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000bb08 CLK_D_idletime
-0000bb04 CLK_D_isrhook
-0000bb00 CLK_D_tabbeg
-0000bafc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000baf8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000c4a0 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-000060c8 GBL_USERINITFXN
-00000001 GBL_boot
-0000c498 GBL_initdone
-0000b5e0 GBL_stackbeg
-0000b9df GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000c39c HST_A_TABBEG
-0000c3d8 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000bb74 HST_D_chanmask
-0000bb78 HST_D_tabbeg
-0000bb7c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000bca0 HWI_D_bss
-0000bca4 HWI_D_ccmask
-0000bc90 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bfec IDL_A_CALBEG
-0000adac IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000bd1c IDL_D_busyObj
-0000bae8 IDL_D_calbeg
-0000bae4 IDL_D_calibrate
-0000bae0 IDL_D_tabbeg
-0000adb8 IDL_END
-0000bff8 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000c3fc IDL_busyObj
-0000c333 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000c32d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000c3f8 IDL_busyObj$stsobj
-0000c330 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000adac IDL_cpuLoad
-0000bfec IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000c408 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000c3dc KNL_swi$sts
-0000c309 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000c2f9 KNL_swi$sts$maxfmt
-0000c3d8 KNL_swi$sts$stsobj
-0000c301 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000adb0 LNK_dataPump
-0000bff0 LNK_dataPump$
-0000bcc4 LNK_dspFrameReadyMask
-0000bcc0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000bccc LNK_readDone
-0000bcd0 LNK_readFail
-0000bcc8 LNK_readPend
-00000370 LNK_rrloop
-0000bcd4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000c45c LOG_A_TABBEG
-0000c474 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000baec LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000c45c LOG_system
-0000c000 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bf24 PIP_A_TABBEG
-0000bfec PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000baf0 PIP_D_tabbeg
-0000baf4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000bb30 PRD_D_cur
-0000bb34 PRD_D_elapsed
-0000bb38 PRD_D_prevtim
-0000bb3c PRD_D_scalar
-0000bb40 PRD_D_swihandle
-0000bb44 PRD_D_tabbeg
-0000bb48 PRD_D_tablen
-0000bb4c PRD_D_thook
-0000bb2c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000c49c PRD_clock
-00000001 QUE$
-0000bb50 RTA_D_fromHost
-0000bb58 RTA_D_logval
-0000bb68 RTA_D_stsval
-0000bb54 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000adb4 RTA_dispatcher
-0000bff4 RTA_dispatcher$
-00001f28 RTA_execute
-0000c3a0 RTA_fromHost
-00009ab0 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bf24 RTA_fromHost$pipe
-0000bf54 RTA_fromHost$pipe$aaa
-0000bf84 RTA_fromHost$pipe$bbb
-0000bca8 RTA_fromHost$pipe$dtab
-0000bf28 RTA_fromHost$pipe$rd
-0000bf58 RTA_fromHost$pipe$wr
-0000c3a8 RTA_fromHost$rtdx
-0000c3bc RTA_toHost
-0000c100 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bf88 RTA_toHost$pipe
-0000bfb8 RTA_toHost$pipe$aaa
-0000bfe8 RTA_toHost$pipe$bbb
-0000bcb4 RTA_toHost$pipe$dtab
-0000bf8c RTA_toHost$pipe$rd
-0000bfbc RTA_toHost$pipe$wr
-0000c3c4 RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000c3d8 STS_A_TABBEG
-0000c408 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000c408 SWI_A_TABBEG
-0000c434 SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000bbc4 SWI_D_curfxn
-0000bbb4 SWI_D_curmask
-0000bbc0 SWI_D_curmbox
-0000bbb8 SWI_D_curset
-0000bbb0 SWI_D_execaddr
-0000bbcc SWI_D_inswi
-0000bbbc SWI_D_lock
-0000bbc8 SWI_D_rdybeg
-0000bbd0 SWI_D_rdytab
-0000bbac SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000c474 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000c494 TRC_R_mask
-0000c490 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000c308 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000b1e0 TSK_idle$stack
-0000b578 TSK_idle$stkptr
-0000c3ec TSK_idle$sts
-0000c323 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000c313 TSK_idle$sts$maxfmt
-0000c3e8 TSK_idle$sts$stsobj
-0000c31b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000adc0 _BIOS_init
-0000afcc _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000bcf4 _CLK_DFLTMICROSECS
-0000bb28 _CLK_D_countspms
-0000bb1c _CLK_D_dirty
-0000bcf8 _CLK_D_microseconds
-0000bb20 _CLK_D_prd
-0000bb24 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000bb0c _CLK_htimeDiv
-0000bb10 _CLK_htimeMult
-0000bd14 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000bb14 _CLK_ltimeDiv
-0000bb18 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00009578 _Config
-0000bd04 _DSK6713_AIC23_codeccontrolhandle
-0000bd08 _DSK6713_AIC23_codecdatahandle
-0000630c _DSK6713_AIC23_config
-00005820 _DSK6713_AIC23_openCodec
-000062e8 _DSK6713_AIC23_rget
-00006220 _DSK6713_AIC23_rset
-00004e40 _DSK6713_getVersion
-00004e90 _DSK6713_init
-00004dac _DSK6713_rget
-00004d98 _DSK6713_rset
-0000bd20 _DSK6713_version
-00004cc0 _DSK6713_wait
-00004d64 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000bb84 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000bb88 _GBL_freq
-00004320 _GBL_getVersion
-0000bb80 _GBL_procId
-000060c8 _GBL_setPLLto225MHz
-0000c39c _HST_A_TABBEG
-0000c3d8 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000bc9c _HWI_D_inhwi
-0000bc90 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b9d8 _HWI_STKBOTTOM
-0000b5e0 _HWI_STKTOP
-0000bc90 _HWI_data
-00004020 _HWI_disable
-0000b9e0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000bd10 _H_Codec
-0000c3fc _IDL_busyObj
-0000adac _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006ce0 _IRQ_enable
-00006da0 _IRQ_globalDisable
-00006dc0 _IRQ_globalEnable
-00005d40 _IRQ_map
-00006de0 _IRQ_nmiEnable
-00005648 _ISR_AIC
-0000bc50 _KNL_alarm
-00003440 _KNL_check
-0000bc74 _KNL_curqueue
-0000bc64 _KNL_curtask
-0000bc6c _KNL_curtime
-000098bc _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000bc8c _KNL_idlefxn
-0000bc58 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000bc78 _KNL_maxqueue
-00003aa0 _KNL_post
-0000bc68 _KNL_prevtask
-0000bc5c _KNL_priority
-0000981c _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000bc60 _KNL_set
-0000bc54 _KNL_setpri
-0000c408 _KNL_swi
-0000bc70 _KNL_swiptr
-00002cec _KNL_switch
-0000bc80 _KNL_tcreatefxn
-0000bc84 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000bc88 _KNL_treadyfxn
-0000bc7c _KNL_tswitchfxn
-0000bc48 _KNL_wFlag
-0000bc4c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000adb0 _LNK_dataPump
-0000bcc4 _LNK_dspFrameReadyMask
-0000bcc0 _LNK_dspFrameRequestMask
-0000bccc _LNK_readDone
-0000bcd0 _LNK_readFail
-0000bcc8 _LNK_readPend
-0000bcd4 _LNK_writeFail
-0000c45c _LOG_A_TABBEG
-0000c474 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000baec _LOG_D_system
-00003ea0 _LOG_event
-0000c45c _LOG_system
-00006600 _MCBSP_open
-00005f00 _MCBSP_reset
-00006700 _MCBSP_start
-0000bb8c _MEM_D_NUMSEGMENTS
-0000bb94 _MEM_D_freelist
-0000bb98 _MEM_D_lockaddr
-0000bb90 _MEM_D_memtab
-0000bb9c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000b1c0 _OBJ_init
-00009988 _OBJ_segtab
-00009950 _OBJ_table
-0000bf24 _PIP_A_TABBEG
-0000bfec _PIP_A_TABEND
-0000bb2c _PRD_D_tick
-0000c49c _PRD_clock
-0000adb4 _RTA_dispatcher
-0000c3a0 _RTA_fromHost
-0000c3bc _RTA_toHost
-0000a960 _RTDX_Buffer
-0000ad6c _RTDX_Buffer_End
-0000a7a0 _RTDX_Buffer_Initialize
-0000a8e0 _RTDX_Buffer_Read
-0000a800 _RTDX_Buffer_ReadCB
-0000a860 _RTDX_Buffer_Size
-0000ad68 _RTDX_Buffer_Start
-0000a900 _RTDX_Buffer_Write
-00009ec0 _RTDX_Buffer_WriteCB
-0000a8a0 _RTDX_Final_RT_Monitor
-0000a720 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a940 _RTDX_Mask_IER
-0000a500 _RTDX_Mon_Queue
-00009ac0 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000ad7c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000c3d8 _STS_A_TABBEG
-0000c408 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000bbc4 _SWI_D_curfxn
-0000bbb4 _SWI_D_curmask
-0000bbb8 _SWI_D_curset
-0000bbb0 _SWI_D_execaddr
-0000bbcc _SWI_D_inswi
-0000bbbc _SWI_D_lock
-0000bbc8 _SWI_D_rdybeg
-0000bbac _SWI_D_runaddr
-0000bbac _SWI_data
-00000e50 _SWI_post
-0000bba0 _SYS
-0000bd24 _SYS_PUTCBEG
-0000bf23 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009a54 _SYS_exitStack
-0000bcfc _SYS_exitStackPtr
-0000bd00 _SYS_exitStackTop
-0000c494 _TRC_R_mask
-0000bcf0 _TSK
-000098f4 _TSK_ATTRS
-00009910 _TSK_config
-00002fa0 _TSK_exit
-0000c308 _TSK_idle
-0000b140 _TSK_init
-0000bce8 _TSK_nTasks
-0000bcec _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-00009930 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000bba8 __HOOK_NUMHOOKS
-0000bba4 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009814 __IRQ_dispatchTable
-00009750 __IRQ_eventTable
-00006e60 __IRQ_hookFetchPacket
-000097d4 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00009a24 __MCBSP_hDev0
-00009a28 __MCBSP_hDev1
-000099cc __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-000099a4 __TSK_mutex
-00009a98 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006d20 ___add_dtor
-000095a0 ___atexit_func_id__
-ffffffff ___binit__
-0000b9e0 ___bss__
-ffffffff ___c_args__
-00006e80 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000bd22 ___end__
-00006e80 ___etext__
-0000c484 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009a90 __cleanup_ptr
-000043c0 __divd
-00009a94 __dtors_ptr
-00005140 __frcmpyd_div
-00009a9c __lock
-00006ba0 __mpyll
-00006e00 __nop
-00006e20 __register_lock
-00006e40 __register_unlock
-00006800 __remi
-0000b5e0 __stack
-000063a0 __strasgi
-00009aa0 __unlock
-00006900 _atexit
-000085e8 _b
-00008db0 _buffer
-0000b080 _c_int00
-000064e0 _call_dtors
-00005708 _circ_fir
-00009aac _dtors
-000055b0 _init_HWI
-000054ec _init_hardware
-000054c0 _main
-00005b00 _memcpy
-00006a7c _mono_read_16Bit
-00006a54 _mono_write_16Bit
-0000bd0c _ptr
-0000bce0 _rtdxNullChanCnt
-0000bce4 _rtdxNullFuncCnt
-0000ad70 _rtdx_buffer_state
-0000ad90 _rtdx_mon_state
-00006a28 _stereo_read_16Bit
-00006a00 _stereo_write_16Bit
-000060a0 _wait500nS
-ffffffff binit
-00006e80 cinit
-00000000 edata
-0000bd22 end
-00006e80 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000c484 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divd
-00004cc0 _DSK6713_wait
-00004d64 _DSK6713_waitusec
-00004d98 _DSK6713_rset
-00004dac _DSK6713_rget
-00004e20 GBL_CLKIN
-00004e40 _DSK6713_getVersion
-00004e90 _DSK6713_init
-00005140 __frcmpyd_div
-00005205 GBL_A_VERSION
-000054c0 _main
-000054ec _init_hardware
-000055b0 _init_HWI
-00005648 _ISR_AIC
-00005708 _circ_fir
-00005820 _DSK6713_AIC23_openCodec
-00005b00 _memcpy
-00005d40 _IRQ_map
-00005f00 _MCBSP_reset
-000060a0 _wait500nS
-000060c8 GBL_USERINITFXN
-000060c8 _GBL_setPLLto225MHz
-00006220 _DSK6713_AIC23_rset
-000062e8 _DSK6713_AIC23_rget
-0000630c _DSK6713_AIC23_config
-000063a0 __strasgi
-000064e0 _call_dtors
-00006600 _MCBSP_open
-00006700 _MCBSP_start
-00006800 __remi
-00006900 _atexit
-00006a00 _stereo_write_16Bit
-00006a28 _stereo_read_16Bit
-00006a54 _mono_write_16Bit
-00006a7c _mono_read_16Bit
-00006ba0 __mpyll
-00006ce0 _IRQ_enable
-00006d20 ___add_dtor
-00006da0 _IRQ_globalDisable
-00006dc0 _IRQ_globalEnable
-00006de0 _IRQ_nmiEnable
-00006e00 __nop
-00006e20 __register_lock
-00006e40 __register_unlock
-00006e60 __IRQ_hookFetchPacket
-00006e80 ___cinit__
-00006e80 ___etext__
-00006e80 cinit
-00006e80 etext
-000085e8 _b
-00008db0 _buffer
-00009578 _Config
-000095a0 ___atexit_func_id__
-00009750 __IRQ_eventTable
-000097d4 __IRQ_intTable
-00009814 __IRQ_dispatchTable
-0000981c _KNL_queues
-000098bc _KNL_dummy
-000098f4 _TSK_ATTRS
-00009910 _TSK_config
-00009930 _TSK_timerSem
-00009950 _OBJ_table
-00009988 _OBJ_segtab
-000099a4 __TSK_mutex
-000099cc __MEM_mutex
-00009a24 __MCBSP_hDev0
-00009a28 __MCBSP_hDev1
-00009a54 _SYS_exitStack
-00009a90 __cleanup_ptr
-00009a94 __dtors_ptr
-00009a98 ___TI_enable_exit_profile_output
-00009a9c __lock
-00009aa0 __unlock
-00009aac _dtors
-00009ab0 RTA_fromHost$buf
-00009ac0 _RTDX_Poll
-00009ec0 _RTDX_Buffer_WriteCB
-0000a500 _RTDX_Mon_Queue
-0000a720 _RTDX_Init_RT_Monitor
-0000a7a0 _RTDX_Buffer_Initialize
-0000a800 _RTDX_Buffer_ReadCB
-0000a860 _RTDX_Buffer_Size
-0000a8a0 _RTDX_Final_RT_Monitor
-0000a8e0 _RTDX_Buffer_Read
-0000a900 _RTDX_Buffer_Write
-0000a940 _RTDX_Mask_IER
-0000a960 _RTDX_Buffer
-0000ad68 _RTDX_Buffer_Start
-0000ad6c _RTDX_Buffer_End
-0000ad70 _rtdx_buffer_state
-0000ad7c _RTDX_writing
-0000ad90 _rtdx_mon_state
-0000adac IDL_A_TABBEG
-0000adac IDL_cpuLoad
-0000adac _IDL_cpuLoad
-0000adb0 LNK_dataPump
-0000adb0 _LNK_dataPump
-0000adb4 RTA_dispatcher
-0000adb4 _RTA_dispatcher
-0000adb8 IDL_END
-0000adc0 BIOS_init
-0000adc0 _BIOS_init
-0000af24 BIOS$$CLKON
-0000af64 BIOS$$CLKOFF
-0000afcc BIOS_start
-0000afcc _BIOS_start
-0000b080 _c_int00
-0000b140 _TSK_init
-0000b1c0 _OBJ_init
-0000b1e0 TSK_idle$stack
-0000b578 TSK_idle$stkptr
-0000b5e0 GBL_stackbeg
-0000b5e0 _HWI_STKTOP
-0000b5e0 __stack
-0000b9d8 _HWI_STKBOTTOM
-0000b9df GBL_stackend
-0000b9e0 $bss
-0000b9e0 .bss
-0000b9e0 _HWI_dispatchTab
-0000b9e0 ___bss__
-0000bae0 IDL_D_tabbeg
-0000bae4 IDL_D_calibrate
-0000bae8 IDL_D_calbeg
-0000baec LOG_D_system
-0000baec _LOG_D_system
-0000baf0 PIP_D_tabbeg
-0000baf4 PIP_D_tablen
-0000baf8 CLK_R_time
-0000bafc CLK_D_timefxn
-0000bb00 CLK_D_tabbeg
-0000bb04 CLK_D_isrhook
-0000bb08 CLK_D_idletime
-0000bb0c _CLK_htimeDiv
-0000bb10 _CLK_htimeMult
-0000bb14 _CLK_ltimeDiv
-0000bb18 _CLK_ltimeMult
-0000bb1c _CLK_D_dirty
-0000bb20 _CLK_D_prd
-0000bb24 _CLK_D_tddr
-0000bb28 _CLK_D_countspms
-0000bb2c PRD_D_tick
-0000bb2c _PRD_D_tick
-0000bb30 PRD_D_cur
-0000bb34 PRD_D_elapsed
-0000bb38 PRD_D_prevtim
-0000bb3c PRD_D_scalar
-0000bb40 PRD_D_swihandle
-0000bb44 PRD_D_tabbeg
-0000bb48 PRD_D_tablen
-0000bb4c PRD_D_thook
-0000bb50 RTA_D_fromHost
-0000bb54 RTA_D_toHost
-0000bb58 RTA_D_logval
-0000bb68 RTA_D_stsval
-0000bb74 HST_D_chanmask
-0000bb78 HST_D_tabbeg
-0000bb7c HST_D_tabend
-0000bb80 _GBL_procId
-0000bb84 _GBL_clkIn
-0000bb88 _GBL_freq
-0000bb8c _MEM_D_NUMSEGMENTS
-0000bb90 _MEM_D_memtab
-0000bb94 _MEM_D_freelist
-0000bb98 _MEM_D_lockaddr
-0000bb9c _MEM_D_unlockaddr
-0000bba0 _SYS
-0000bba4 __HOOK_knlId
-0000bba8 __HOOK_NUMHOOKS
-0000bbac SWI_D_runaddr
-0000bbac _SWI_D_runaddr
-0000bbac _SWI_data
-0000bbb0 SWI_D_execaddr
-0000bbb0 _SWI_D_execaddr
-0000bbb4 SWI_D_curmask
-0000bbb4 _SWI_D_curmask
-0000bbb8 SWI_D_curset
-0000bbb8 _SWI_D_curset
-0000bbbc SWI_D_lock
-0000bbbc _SWI_D_lock
-0000bbc0 SWI_D_curmbox
-0000bbc4 SWI_D_curfxn
-0000bbc4 _SWI_D_curfxn
-0000bbc8 SWI_D_rdybeg
-0000bbc8 _SWI_D_rdybeg
-0000bbcc SWI_D_inswi
-0000bbcc _SWI_D_inswi
-0000bbd0 SWI_D_rdytab
-0000bc48 _KNL_wFlag
-0000bc4c _KNL_wList
-0000bc50 _KNL_alarm
-0000bc54 _KNL_setpri
-0000bc58 _KNL_inactive
-0000bc5c _KNL_priority
-0000bc60 _KNL_set
-0000bc64 _KNL_curtask
-0000bc68 _KNL_prevtask
-0000bc6c _KNL_curtime
-0000bc70 _KNL_swiptr
-0000bc74 _KNL_curqueue
-0000bc78 _KNL_maxqueue
-0000bc7c _KNL_tswitchfxn
-0000bc80 _KNL_tcreatefxn
-0000bc84 _KNL_tdeletefxn
-0000bc88 _KNL_treadyfxn
-0000bc8c _KNL_idlefxn
-0000bc90 HWI_D_spsave
-0000bc90 _HWI_D_spsave
-0000bc90 _HWI_data
-0000bc9c _HWI_D_inhwi
-0000bca0 HWI_D_bss
-0000bca4 HWI_D_ccmask
-0000bca8 RTA_fromHost$pipe$dtab
-0000bcb4 RTA_toHost$pipe$dtab
-0000bcc0 LNK_dspFrameRequestMask
-0000bcc0 _LNK_dspFrameRequestMask
-0000bcc4 LNK_dspFrameReadyMask
-0000bcc4 _LNK_dspFrameReadyMask
-0000bcc8 LNK_readPend
-0000bcc8 _LNK_readPend
-0000bccc LNK_readDone
-0000bccc _LNK_readDone
-0000bcd0 LNK_readFail
-0000bcd0 _LNK_readFail
-0000bcd4 LNK_writeFail
-0000bcd4 _LNK_writeFail
-0000bce0 _rtdxNullChanCnt
-0000bce4 _rtdxNullFuncCnt
-0000bce8 _TSK_nTasks
-0000bcec _TSK_pid
-0000bcf0 _TSK
-0000bcf4 _CLK_DFLTMICROSECS
-0000bcf8 _CLK_D_microseconds
-0000bcfc _SYS_exitStackPtr
-0000bd00 _SYS_exitStackTop
-0000bd04 _DSK6713_AIC23_codeccontrolhandle
-0000bd08 _DSK6713_AIC23_codecdatahandle
-0000bd0c _ptr
-0000bd10 _H_Codec
-0000bd14 _CLK_htimePerLtime
-0000bd1c IDL_D_busyObj
-0000bd20 _DSK6713_version
-0000bd22 ___end__
-0000bd22 end
-0000bd24 _SYS_PUTCBEG
-0000bf23 _SYS_PUTCEND
-0000bf24 PIP_A_TABBEG
-0000bf24 RTA_fromHost$pipe
-0000bf24 _PIP_A_TABBEG
-0000bf28 RTA_fromHost$pipe$rd
-0000bf54 RTA_fromHost$pipe$aaa
-0000bf58 RTA_fromHost$pipe$wr
-0000bf84 RTA_fromHost$pipe$bbb
-0000bf88 RTA_toHost$pipe
-0000bf8c RTA_toHost$pipe$rd
-0000bfb8 RTA_toHost$pipe$aaa
-0000bfbc RTA_toHost$pipe$wr
-0000bfe8 RTA_toHost$pipe$bbb
-0000bfec IDL_A_CALBEG
-0000bfec IDL_cpuLoad$
-0000bfec PIP_A_TABEND
-0000bfec _PIP_A_TABEND
-0000bff0 LNK_dataPump$
-0000bff4 RTA_dispatcher$
-0000bff8 IDL_END$
-0000c000 LOG_system$buf
-0000c100 RTA_toHost$buf
-0000c2f9 KNL_swi$sts$maxfmt
-0000c301 KNL_swi$sts$sumfmt
-0000c308 TSK_idle
-0000c308 _TSK_idle
-0000c309 KNL_swi$sts$avgfmt
-0000c313 TSK_idle$sts$maxfmt
-0000c31b TSK_idle$sts$sumfmt
-0000c323 TSK_idle$sts$avgfmt
-0000c32d IDL_busyObj$maxfmt
-0000c330 IDL_busyObj$sumfmt
-0000c333 IDL_busyObj$avgfmt
-0000c39c HST_A_TABBEG
-0000c39c _HST_A_TABBEG
-0000c3a0 RTA_fromHost
-0000c3a0 _RTA_fromHost
-0000c3a8 RTA_fromHost$rtdx
-0000c3bc RTA_toHost
-0000c3bc _RTA_toHost
-0000c3c4 RTA_toHost$rtdx
-0000c3d8 HST_A_TABEND
-0000c3d8 KNL_swi$sts$stsobj
-0000c3d8 STS_A_TABBEG
-0000c3d8 _HST_A_TABEND
-0000c3d8 _STS_A_TABBEG
-0000c3dc KNL_swi$sts
-0000c3e8 TSK_idle$sts$stsobj
-0000c3ec TSK_idle$sts
-0000c3f8 IDL_busyObj$stsobj
-0000c3fc IDL_busyObj
-0000c3fc _IDL_busyObj
-0000c408 KNL_swi
-0000c408 STS_A_TABEND
-0000c408 SWI_A_TABBEG
-0000c408 _KNL_swi
-0000c408 _STS_A_TABEND
-0000c434 SWI_A_TABEND
-0000c45c LOG_A_TABBEG
-0000c45c LOG_system
-0000c45c _LOG_A_TABBEG
-0000c45c _LOG_system
-0000c474 LOG_A_TABEND
-0000c474 SYS$config
-0000c474 _LOG_A_TABEND
-0000c484 ___pinit__
-0000c484 pinit
-0000c490 TRC_cinit
-0000c494 TRC_R_mask
-0000c494 _TRC_R_mask
-0000c498 GBL_initdone
-0000c49c CLK_A_TABBEG
-0000c49c PRD_clock
-0000c49c _PRD_clock
-0000c4a0 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[720 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/e0982f7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/e0982f7add0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/22/e0982f7add0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/3074f5e4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/3074f5e4e50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/3074f5e4e50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/e0209579cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/e0209579cd0100181ce89bcacea45786
deleted file mode 100644
index 3a02123..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/23/e0209579cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* MODULE PARAMETERS */
--u _GBL_setPLLto225MHz
-GBL_USERINITFXN = _GBL_setPLLto225MHz;
-
--u MEM_NULL
-MEM_SEGZERO = MEM_NULL;
--u MEM_NULL
-MEM_MALLOCSEG = MEM_NULL;
-
--u CLK_F_getshtime
-CLK_TIMEFXN = CLK_F_getshtime;
--u HWI_F_dispatch
-CLK_HOOKFXN = HWI_F_dispatch;
-
--u _KNL_tick
-PRD_THOOKFXN = _KNL_tick;
-
--u IRAM
-RTDX_DATAMEMSEG = IRAM;
-
--u IRAM
-HST_DSMBUFSEG = IRAM;
-
--u GBL_NULL
-SWI_EHOOKFXN = GBL_NULL;
--u GBL_NULL
-SWI_IHOOKFXN = GBL_NULL;
--u SWI_F_exec
-SWI_EXECFXN = SWI_F_exec;
--u SWI_F_run
-SWI_RUNFXN = SWI_F_run;
-
--u MEM_NULL
-TSK_STACKSEG = MEM_NULL;
--u _FXN_F_nop
-TSK_VCREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VDELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VEXITFXN = _FXN_F_nop;
-
--u IDL_F_stub
-IDL_CALIBRFXN = IDL_F_stub;
-
--u _UTL_doAbort
-SYS_ABORTFXN = _UTL_doAbort;
--u _UTL_doError
-SYS_ERRORFXN = _UTL_doError;
--u _UTL_halt
-SYS_EXITFXN = _UTL_halt;
--u _UTL_doPutc
-SYS_PUTCFXN = _UTL_doPutc;
-
--u _FXN_F_nop
-GIO_CREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_DELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_PENDFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_POSTFXN = _FXN_F_nop;
-
-/* OBJECT ALIASES */
-_SDRAM = SDRAM;
-_IRAM = IRAM;
-_PRD_clock = PRD_clock;
-_RTA_fromHost = RTA_fromHost;
-_RTA_toHost = RTA_toHost;
-_HWI_RESET = HWI_RESET;
-_HWI_NMI = HWI_NMI;
-_HWI_RESERVED0 = HWI_RESERVED0;
-_HWI_RESERVED1 = HWI_RESERVED1;
-_HWI_INT4 = HWI_INT4;
-_HWI_INT5 = HWI_INT5;
-_HWI_INT6 = HWI_INT6;
-_HWI_INT7 = HWI_INT7;
-_HWI_INT8 = HWI_INT8;
-_HWI_INT9 = HWI_INT9;
-_HWI_INT10 = HWI_INT10;
-_HWI_INT11 = HWI_INT11;
-_HWI_INT12 = HWI_INT12;
-_HWI_INT13 = HWI_INT13;
-_HWI_INT14 = HWI_INT14;
-_HWI_INT15 = HWI_INT15;
-_KNL_swi = KNL_swi;
-_TSK_idle = TSK_idle;
-_IDL_cpuLoad = IDL_cpuLoad;
-_LNK_dataPump = LNK_dataPump;
-_RTA_dispatcher = RTA_dispatcher;
-_LOG_system = LOG_system;
-_IDL_busyObj = IDL_busyObj;
-
-/* MODULE GBL */
-
-SECTIONS {
- .vers (COPY): {} /* version information */
-}
-
--priority
---trampolines
--llnkrtdx.a67
--ldrivers.a67 /* device drivers support */
--lsioboth.a67 /* supports both SIO models */
--lbiosC6000.a67 /* BIOS clock specific library */
--lbios6x1x.a67 /* BIOS c6x1x specific library */
--lbios.a67 /* DSP/BIOS support */
--lrtdx.lib /* RTDX support */
--lrts6700.lib /* C and C++ run-time library support */
-
-_GBL_CACHE = GBL_CACHE;
-
-/* MODULE MEM */
--stack 0x400
-MEMORY {
- SDRAM : origin = 0x80000000, len = 0x800000
- IRAM : origin = 0x0, len = 0x40000
-}
-/* MODULE CLK */
-SECTIONS {
- .clk: {
-
- CLK_F_gethtime = CLK_F_getshtime;
- *(.clk)
- } > IRAM, RUN_START(CLK_A_TABBEG)
-}
-_CLK_PRD = CLK_PRD;
-_CLK_COUNTSPMS = CLK_COUNTSPMS;
-_CLK_REGS = CLK_REGS;
-_CLK_USETIMER = CLK_USETIMER;
-_CLK_TIMERNUM = CLK_TIMERNUM;
-_CLK_TDDR = CLK_TDDR;
-
-/* MODULE PRD */
-SECTIONS {
- .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {
- } > IRAM
-}
-PRD_A_TABLEN = 0;
-
-/* MODULE RTDX */
-_RTDX_interrupt_mask = 0x0;
-
-/* MODULE HST */
-_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask;
-_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask;
-_LNK_readDone = LNK_readDone;
-_LNK_readFail = LNK_readFail;
-_LNK_readPend = LNK_readPend;
-_LNK_writeFail = LNK_writeFail;
-/* MODULE HWI */
-SECTIONS {
- .hwi_vec: 0x0 {
- HWI_A_VECS = .;
- *(.hwi_vec)
- }
-}
-
-_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;
-
-/* MODULE SWI */
-SECTIONS {
- .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {
- } > IRAM
-}
-SWI_A_TABLEN = 1;
-
-/* MODULE TSK */
-SECTIONS {
- .tsk: {
- *(.tsk)
- } > IRAM
-}
-
-/* MODULE IDL */
-SECTIONS {
- .idl: {
- *(.idl)
- } > IRAM, RUN_START(IDL_A_TABBEG)
-
- .idlcal: {
- *(.idlcal)
- } > IRAM, RUN_START(IDL_A_CALBEG)
-}
-
-
-LOG_A_TABLEN = 1; _LOG_A_TABLEN = 1;
-
-PIP_A_TABLEN = 2;
-
-
-SECTIONS {
- .bss: {} > IRAM
-
- .far: {} > IRAM
-
- .sysdata: {} > IRAM
-
- .dsm: {} > IRAM
-
- frt: {} > IRAM
-
- .mem: {} > IRAM
-
- .bios: {} > IRAM
-
- .cio: {} > IRAM
-
- .data: {} > IRAM
-
- .gio: {} > IRAM
-
- .pinit: {} > IRAM
-
- .sys: {} > IRAM
-
- .sysregs: {} > IRAM
-
- .text: {} > IRAM
-
- .cinit: {} > IRAM
-
- .switch: {} > IRAM
-
- .gblinit: {} > IRAM
-
- .sysinit: {} > IRAM
-
- .trcdata: {} > IRAM
-
- .hwi: {} > IRAM
-
- .rtdx_data: {} > IRAM
-
- .rtdx_text: {} > IRAM
-
- .TSK_idle$stk: {
- *(.TSK_idle$stk)
- } > IRAM
-
- /* LOG_system buffer */
- .LOG_system$buf: align = 0x100 {} > IRAM
-
- /* RTA_fromHost buffer */
- .hst1: align = 0x4 {} > IRAM
-
- /* RTA_toHost buffer */
- .hst0: align = 0x4 {} > IRAM
-
- GROUP {
- .const: align = 0x8 {}
- .printf (COPY): {}
- } > IRAM
-
- .args: align=4 fill=0 {
- *(.args)
- . += 0x4;
- } > IRAM
-
- .trace: fill = 0x0 align = 0x4 {
- _SYS_PUTCBEG = .;
- . += 0x200;
- _SYS_PUTCEND = . - 1;
- } > IRAM
-
- .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) {
- } > IRAM
-
- .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) {
- } > IRAM
-
- .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) {
- } > IRAM
-
- .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) {
- } > IRAM
-
- .stack: align = 0x8 {
- GBL_stackbeg = .;
- *(.stack)
- GBL_stackend = GBL_stackbeg + 0x400 - 1;
- _HWI_STKBOTTOM = GBL_stackbeg + 0x400 - 8;
- _HWI_STKTOP = GBL_stackbeg;
- } > IRAM
-
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/50fa68173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/50fa68173f070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/50fa68173f070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/d0ae7f11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/d0ae7f11e10100181ce89bcacea45786
deleted file mode 100644
index db2883c..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/24/d0ae7f11e10100181ce89bcacea45786
+++ /dev/null
@@ -1,1753 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 14:51:11 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a940
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd53 000342ad RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000023a0
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000360 intio.obj (.text)
- 000051c0 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 000054a0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056e0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000058a0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a40 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005bc0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d40 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e80 00000120 : sinit.obj (.text:_call_dtors)
- 00005fa0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000060a0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000061a0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 000062a0 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006380 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006460 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006520 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 000065c0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006600 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006640 00000040 : divf.obj (.text:___isnanf)
- 00006680 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000066a0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000066c0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066e0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006700 00000020 : _lock.obj (.text:__register_lock)
- 00006720 00000020 : _lock.obj (.text:__register_unlock)
- 00006740 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006760 00001744
- 00006760 00000800 intio.obj (.cinit)
- 00006f60 00000564 dsp_bios_cfg.obj (.cinit)
- 000074c4 00000004 --HOLE-- [fill = 0]
- 000074c8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007734 00000004 --HOLE-- [fill = 0]
- 00007738 000001a4 : knl.o67 (.cinit)
- 000078dc 00000004 --HOLE-- [fill = 0]
- 000078e0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 00007a0c 00000004 --HOLE-- [fill = 0]
- 00007a10 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007ac0 00000070 : tsk.o67 (.cinit)
- 00007b30 00000060 : tsk_stup.o67 (.cinit)
- 00007b90 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bec 00000004 --HOLE-- [fill = 0]
- 00007bf0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c44 00000004 --HOLE-- [fill = 0]
- 00007c48 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c94 00000004 --HOLE-- [fill = 0]
- 00007c98 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007ce4 00000004 --HOLE-- [fill = 0]
- 00007ce8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007d1c 00000004 --HOLE-- [fill = 0]
- 00007d20 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d50 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d7c 00000004 --HOLE-- [fill = 0]
- 00007d80 0000002c rts6700.lib : exit.obj (.cinit)
- 00007dac 00000004 --HOLE-- [fill = 0]
- 00007db0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007dd4 00000004 --HOLE-- [fill = 0]
- 00007dd8 0000001c : sys.o67 (.cinit)
- 00007df4 00000004 --HOLE-- [fill = 0]
- 00007df8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007e14 00000004 --HOLE-- [fill = 0]
- 00007e18 0000001c : atexit.obj (.cinit)
- 00007e34 00000004 --HOLE-- [fill = 0]
- 00007e38 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e50 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e60 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 0000000c : idl_busy.o67 (.cinit)
- 00007e7c 00000004 --HOLE-- [fill = 0]
- 00007e80 0000000c : knl_swit.o67 (.cinit)
- 00007e8c 00000004 --HOLE-- [fill = 0]
- 00007e90 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e9c 00000004 --HOLE-- [fill = 0]
- 00007ea0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007ea4 00000004
- 00007ea4 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007ea8 000014c8 UNINITIALIZED
- 00007ea8 00000fb8 intio.obj (.far)
- 00008e60 00000188 rts6700.lib : atexit.obj (.far)
- 00008fe8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090dc 000000d8 bios.a67 : knl.o67 (.far)
- 000091b4 0000005c : tsk.o67 (.far)
- 00009210 00000054 : obj_init.o67 (.far)
- 00009264 00000050 : tsk_stup.o67 (.far)
- 000092b4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092ec 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009314 00000020 bios.a67 : sys.o67 (.far)
- 00009334 00000010 : knl_tick.o67 (.far)
- 00009344 0000000c : utl_putc.o67 (.far)
- 00009350 0000000c rts6700.lib : exit.obj (.far)
- 0000935c 00000008 : _lock.obj (.far)
- 00009364 00000008 : divf.obj (.far)
- 0000936c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009370 00000010 UNINITIALIZED
- 00009370 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009380 00000ea0
- 00009380 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009780 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009ac0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009dc0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009f00 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fe0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a060 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a0c0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a120 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a160 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a1a0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a1c0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1e0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a200 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a220 0000044c UNINITIALIZED
- 0000a220 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a630 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a650 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a66c 00000010 UNINITIALIZED
- 0000a66c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a680 00000420
- 0000a680 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a940 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000aa00 00000080 : tsk_init.o67 (.sysinit)
- 0000aa80 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aaa0 00000400 UNINITIALIZED
- 0000aaa0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000aea0 00000400 UNINITIALIZED
- 0000aea0 00000400 --HOLE--
-
-.bss 0 0000b2a0 0000033e UNINITIALIZED
- 0000b2a0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b3a0 000000cc : biosdata.o67 (.bss)
- 0000b46c 0000009c : swi.o67 (.bss)
- 0000b508 00000048 : knl.o67 (.bss)
- 0000b550 00000018 : hwi.o67 (.bss)
- 0000b568 00000018 dsp_bios_cfg.obj (.bss)
- 0000b580 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b598 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b5a8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b5b4 00000008 : clk_data.o67 (.bss)
- 0000b5bc 00000008 : sys.o67 (.bss)
- 0000b5c4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b5cc 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b5d0 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b5d4 00000004 : idl_busy.o67 (.bss)
- 0000b5d8 00000004 intio.obj (.bss)
- 0000b5dc 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5e0 00000200
- 0000b5e0 00000200 --HOLE-- [fill = 00000000]
-
-.log 0 0000b7e0 00000018
- 0000b7e0 00000018 dsp_bios_cfg.obj (.log)
-
-.clk 0 0000b7f8 00000008 UNINITIALIZED
- 0000b7f8 00000008 dsp_bios_cfg.obj (.clk)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bc24 00000040
- 0000bc24 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000bc64 0000003c UNINITIALIZED
- 0000bc64 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bca0 00000030
- 0000bca0 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bcd0 0000002c UNINITIALIZED
- 0000bcd0 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcfc 00000028
- 0000bcfc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idlcal 0 0000bd24 00000010 UNINITIALIZED
- 0000bd24 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd34 00000010 UNINITIALIZED
- 0000bd34 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd44 0000000c
- 0000bd44 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd48 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd4c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd50 0000000c
- 0000bd50 0000000c bios.a67 : trc.o67 (.trcdata)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b2a0 $bss
-0000b2a0 .bss
-00000000 .data
-000043c0 .text
-0000a824 BIOS$$CLKOFF
-0000a7e4 BIOS$$CLKON
-0000a680 BIOS_init
-0000a88c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000b7f8 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b3c8 CLK_D_idletime
-0000b3c4 CLK_D_isrhook
-0000b3c0 CLK_D_tabbeg
-0000b3bc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b3b8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000b7fc CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a68 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd58 GBL_initdone
-0000aea0 GBL_stackbeg
-0000b29f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc64 HST_A_TABBEG
-0000bca0 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b434 HST_D_chanmask
-0000b438 HST_D_tabbeg
-0000b43c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b560 HWI_D_bss
-0000b564 HWI_D_ccmask
-0000b550 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd24 IDL_A_CALBEG
-0000a66c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b5d4 IDL_D_busyObj
-0000b3a8 IDL_D_calbeg
-0000b3a4 IDL_D_calibrate
-0000b3a0 IDL_D_tabbeg
-0000a678 IDL_END
-0000bd30 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bcc4 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bcc0 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a66c IDL_cpuLoad
-0000bd24 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bcd0 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bca4 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bca0 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a670 LNK_dataPump
-0000bd28 LNK_dataPump$
-0000b584 LNK_dspFrameReadyMask
-0000b580 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b58c LNK_readDone
-0000b590 LNK_readFail
-0000b588 LNK_readPend
-00000370 LNK_rrloop
-0000b594 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b7e0 LOG_A_TABBEG
-0000b7f8 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b3ac LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b7e0 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b3b0 PIP_D_tabbeg
-0000b3b4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3f0 PRD_D_cur
-0000b3f4 PRD_D_elapsed
-0000b3f8 PRD_D_prevtim
-0000b3fc PRD_D_scalar
-0000b400 PRD_D_swihandle
-0000b404 PRD_D_tabbeg
-0000b408 PRD_D_tablen
-0000b40c PRD_D_thook
-0000b3ec PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000b7f8 PRD_clock
-00000001 QUE$
-0000b410 RTA_D_fromHost
-0000b418 RTA_D_logval
-0000b428 RTA_D_stsval
-0000b414 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a674 RTA_dispatcher
-0000bd2c RTA_dispatcher$
-00001f28 RTA_execute
-0000bc68 RTA_fromHost
-00009370 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b568 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b574 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc8c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bca0 STS_A_TABBEG
-0000bcd0 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bcd0 SWI_A_TABBEG
-0000bcfc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b484 SWI_D_curfxn
-0000b474 SWI_D_curmask
-0000b480 SWI_D_curmbox
-0000b478 SWI_D_curset
-0000b470 SWI_D_execaddr
-0000b48c SWI_D_inswi
-0000b47c SWI_D_lock
-0000b488 SWI_D_rdybeg
-0000b490 SWI_D_rdytab
-0000b46c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd34 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd54 TRC_R_mask
-0000bd50 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aaa0 TSK_idle$stack
-0000ae38 TSK_idle$stkptr
-0000bcb4 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bcb0 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a680 _BIOS_init
-0000a88c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b5b4 _CLK_DFLTMICROSECS
-0000b3e8 _CLK_D_countspms
-0000b3dc _CLK_D_dirty
-0000b5b8 _CLK_D_microseconds
-0000b3e0 _CLK_D_prd
-0000b3e4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b3cc _CLK_htimeDiv
-0000b3d0 _CLK_htimeMult
-0000b5cc _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b3d4 _CLK_ltimeDiv
-0000b3d8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e38 _Config
-0000b5c4 _DSK6713_AIC23_codeccontrolhandle
-0000b5c8 _DSK6713_AIC23_codecdatahandle
-00005cac _DSK6713_AIC23_config
-000051c0 _DSK6713_AIC23_openCodec
-00005c88 _DSK6713_AIC23_rget
-00005bc0 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5dc _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b444 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b448 _GBL_freq
-00004320 _GBL_getVersion
-0000b440 _GBL_procId
-00005a68 _GBL_setPLLto225MHz
-0000bc64 _HST_A_TABBEG
-0000bca0 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b55c _HWI_D_inhwi
-0000b550 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b298 _HWI_STKBOTTOM
-0000aea0 _HWI_STKTOP
-0000b550 _HWI_data
-00004020 _HWI_disable
-0000b2a0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5d8 _H_Codec
-0000bcc4 _IDL_busyObj
-0000a66c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-000065c0 _IRQ_enable
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000056e0 _IRQ_map
-000066c0 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b510 _KNL_alarm
-00003440 _KNL_check
-0000b534 _KNL_curqueue
-0000b524 _KNL_curtask
-0000b52c _KNL_curtime
-0000917c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b54c _KNL_idlefxn
-0000b518 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b538 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b528 _KNL_prevtask
-0000b51c _KNL_priority
-000090dc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b520 _KNL_set
-0000b514 _KNL_setpri
-0000bcd0 _KNL_swi
-0000b530 _KNL_swiptr
-00002cec _KNL_switch
-0000b540 _KNL_tcreatefxn
-0000b544 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b548 _KNL_treadyfxn
-0000b53c _KNL_tswitchfxn
-0000b508 _KNL_wFlag
-0000b50c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a670 _LNK_dataPump
-0000b584 _LNK_dspFrameReadyMask
-0000b580 _LNK_dspFrameRequestMask
-0000b58c _LNK_readDone
-0000b590 _LNK_readFail
-0000b588 _LNK_readPend
-0000b594 _LNK_writeFail
-0000b7e0 _LOG_A_TABBEG
-0000b7f8 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b3ac _LOG_D_system
-00003ea0 _LOG_event
-0000b7e0 _LOG_system
-00005fa0 _MCBSP_open
-000058a0 _MCBSP_reset
-000060a0 _MCBSP_start
-0000b44c _MEM_D_NUMSEGMENTS
-0000b454 _MEM_D_freelist
-0000b458 _MEM_D_lockaddr
-0000b450 _MEM_D_memtab
-0000b45c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa80 _OBJ_init
-00009248 _OBJ_segtab
-00009210 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3ec _PRD_D_tick
-0000b7f8 _PRD_clock
-0000a674 _RTA_dispatcher
-0000bc68 _RTA_fromHost
-0000bc84 _RTA_toHost
-0000a220 _RTDX_Buffer
-0000a62c _RTDX_Buffer_End
-0000a060 _RTDX_Buffer_Initialize
-0000a1a0 _RTDX_Buffer_Read
-0000a0c0 _RTDX_Buffer_ReadCB
-0000a120 _RTDX_Buffer_Size
-0000a628 _RTDX_Buffer_Start
-0000a1c0 _RTDX_Buffer_Write
-00009780 _RTDX_Buffer_WriteCB
-0000a160 _RTDX_Final_RT_Monitor
-00009fe0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a200 _RTDX_Mask_IER
-00009dc0 _RTDX_Mon_Queue
-00009380 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a63c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bca0 _STS_A_TABBEG
-0000bcd0 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b484 _SWI_D_curfxn
-0000b474 _SWI_D_curmask
-0000b478 _SWI_D_curset
-0000b470 _SWI_D_execaddr
-0000b48c _SWI_D_inswi
-0000b47c _SWI_D_lock
-0000b488 _SWI_D_rdybeg
-0000b46c _SWI_D_runaddr
-0000b46c _SWI_data
-00000e50 _SWI_post
-0000b460 _SYS
-0000b5e0 _SYS_PUTCBEG
-0000b7df _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009314 _SYS_exitStack
-0000b5bc _SYS_exitStackPtr
-0000b5c0 _SYS_exitStackTop
-0000bd54 _TRC_R_mask
-0000b5b0 _TSK
-000091b4 _TSK_ATTRS
-000091d0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000aa00 _TSK_init
-0000b5a8 _TSK_nTasks
-0000b5ac _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091f0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b468 __HOOK_NUMHOOKS
-0000b464 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090d4 __IRQ_dispatchTable
-00009010 __IRQ_eventTable
-00006740 __IRQ_hookFetchPacket
-00009094 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092e4 __MCBSP_hDev0
-000092e8 __MCBSP_hDev1
-0000928c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009264 __TSK_mutex
-00009358 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006600 ___add_dtor
-00008e60 ___atexit_func_id__
-ffffffff ___binit__
-0000b2a0 ___bss__
-ffffffff ___c_args__
-00006760 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5de ___end__
-00006760 ___etext__
-0000bd44 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009350 __cleanup_ptr
-000043c0 __divf
-00009354 __dtors_ptr
-000062a0 __frcmpyf_div
-0000935c __lock
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-0000aea0 __stack
-00005d40 __strasgi
-00009360 __unlock
-000061a0 _atexit
-00007ea8 _b
-0000a940 _c_int00
-00005e80 _call_dtors
-0000936c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-000054a0 _memcpy
-000063fc _mono_read_16Bit
-000063d4 _mono_write_16Bit
-000050e0 _non_circ_fir
-0000b5a0 _rtdxNullChanCnt
-0000b5a4 _rtdxNullFuncCnt
-0000a630 _rtdx_buffer_state
-0000a650 _rtdx_mon_state
-000063a8 _stereo_read_16Bit
-00006380 _stereo_write_16Bit
-00005a40 _wait500nS
-00008670 _x
-ffffffff binit
-00006760 cinit
-00000000 edata
-0000b5de end
-00006760 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd44 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050e0 _non_circ_fir
-000051c0 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-000054a0 _memcpy
-000056e0 _IRQ_map
-000058a0 _MCBSP_reset
-00005a40 _wait500nS
-00005a68 GBL_USERINITFXN
-00005a68 _GBL_setPLLto225MHz
-00005bc0 _DSK6713_AIC23_rset
-00005c88 _DSK6713_AIC23_rget
-00005cac _DSK6713_AIC23_config
-00005d40 __strasgi
-00005e80 _call_dtors
-00005fa0 _MCBSP_open
-000060a0 _MCBSP_start
-000061a0 _atexit
-000062a0 __frcmpyf_div
-00006380 _stereo_write_16Bit
-000063a8 _stereo_read_16Bit
-000063d4 _mono_write_16Bit
-000063fc _mono_read_16Bit
-000065c0 _IRQ_enable
-00006600 ___add_dtor
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000066c0 _IRQ_nmiEnable
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-00006740 __IRQ_hookFetchPacket
-00006760 ___cinit__
-00006760 ___etext__
-00006760 cinit
-00006760 etext
-00007ea8 _b
-00008670 _x
-00008e38 _Config
-00008e60 ___atexit_func_id__
-00009010 __IRQ_eventTable
-00009094 __IRQ_intTable
-000090d4 __IRQ_dispatchTable
-000090dc _KNL_queues
-0000917c _KNL_dummy
-000091b4 _TSK_ATTRS
-000091d0 _TSK_config
-000091f0 _TSK_timerSem
-00009210 _OBJ_table
-00009248 _OBJ_segtab
-00009264 __TSK_mutex
-0000928c __MEM_mutex
-000092e4 __MCBSP_hDev0
-000092e8 __MCBSP_hDev1
-00009314 _SYS_exitStack
-00009350 __cleanup_ptr
-00009354 __dtors_ptr
-00009358 ___TI_enable_exit_profile_output
-0000935c __lock
-00009360 __unlock
-0000936c _dtors
-00009370 RTA_fromHost$buf
-00009380 _RTDX_Poll
-00009780 _RTDX_Buffer_WriteCB
-00009dc0 _RTDX_Mon_Queue
-00009fe0 _RTDX_Init_RT_Monitor
-0000a060 _RTDX_Buffer_Initialize
-0000a0c0 _RTDX_Buffer_ReadCB
-0000a120 _RTDX_Buffer_Size
-0000a160 _RTDX_Final_RT_Monitor
-0000a1a0 _RTDX_Buffer_Read
-0000a1c0 _RTDX_Buffer_Write
-0000a200 _RTDX_Mask_IER
-0000a220 _RTDX_Buffer
-0000a628 _RTDX_Buffer_Start
-0000a62c _RTDX_Buffer_End
-0000a630 _rtdx_buffer_state
-0000a63c _RTDX_writing
-0000a650 _rtdx_mon_state
-0000a66c IDL_A_TABBEG
-0000a66c IDL_cpuLoad
-0000a66c _IDL_cpuLoad
-0000a670 LNK_dataPump
-0000a670 _LNK_dataPump
-0000a674 RTA_dispatcher
-0000a674 _RTA_dispatcher
-0000a678 IDL_END
-0000a680 BIOS_init
-0000a680 _BIOS_init
-0000a7e4 BIOS$$CLKON
-0000a824 BIOS$$CLKOFF
-0000a88c BIOS_start
-0000a88c _BIOS_start
-0000a940 _c_int00
-0000aa00 _TSK_init
-0000aa80 _OBJ_init
-0000aaa0 TSK_idle$stack
-0000ae38 TSK_idle$stkptr
-0000aea0 GBL_stackbeg
-0000aea0 _HWI_STKTOP
-0000aea0 __stack
-0000b298 _HWI_STKBOTTOM
-0000b29f GBL_stackend
-0000b2a0 $bss
-0000b2a0 .bss
-0000b2a0 _HWI_dispatchTab
-0000b2a0 ___bss__
-0000b3a0 IDL_D_tabbeg
-0000b3a4 IDL_D_calibrate
-0000b3a8 IDL_D_calbeg
-0000b3ac LOG_D_system
-0000b3ac _LOG_D_system
-0000b3b0 PIP_D_tabbeg
-0000b3b4 PIP_D_tablen
-0000b3b8 CLK_R_time
-0000b3bc CLK_D_timefxn
-0000b3c0 CLK_D_tabbeg
-0000b3c4 CLK_D_isrhook
-0000b3c8 CLK_D_idletime
-0000b3cc _CLK_htimeDiv
-0000b3d0 _CLK_htimeMult
-0000b3d4 _CLK_ltimeDiv
-0000b3d8 _CLK_ltimeMult
-0000b3dc _CLK_D_dirty
-0000b3e0 _CLK_D_prd
-0000b3e4 _CLK_D_tddr
-0000b3e8 _CLK_D_countspms
-0000b3ec PRD_D_tick
-0000b3ec _PRD_D_tick
-0000b3f0 PRD_D_cur
-0000b3f4 PRD_D_elapsed
-0000b3f8 PRD_D_prevtim
-0000b3fc PRD_D_scalar
-0000b400 PRD_D_swihandle
-0000b404 PRD_D_tabbeg
-0000b408 PRD_D_tablen
-0000b40c PRD_D_thook
-0000b410 RTA_D_fromHost
-0000b414 RTA_D_toHost
-0000b418 RTA_D_logval
-0000b428 RTA_D_stsval
-0000b434 HST_D_chanmask
-0000b438 HST_D_tabbeg
-0000b43c HST_D_tabend
-0000b440 _GBL_procId
-0000b444 _GBL_clkIn
-0000b448 _GBL_freq
-0000b44c _MEM_D_NUMSEGMENTS
-0000b450 _MEM_D_memtab
-0000b454 _MEM_D_freelist
-0000b458 _MEM_D_lockaddr
-0000b45c _MEM_D_unlockaddr
-0000b460 _SYS
-0000b464 __HOOK_knlId
-0000b468 __HOOK_NUMHOOKS
-0000b46c SWI_D_runaddr
-0000b46c _SWI_D_runaddr
-0000b46c _SWI_data
-0000b470 SWI_D_execaddr
-0000b470 _SWI_D_execaddr
-0000b474 SWI_D_curmask
-0000b474 _SWI_D_curmask
-0000b478 SWI_D_curset
-0000b478 _SWI_D_curset
-0000b47c SWI_D_lock
-0000b47c _SWI_D_lock
-0000b480 SWI_D_curmbox
-0000b484 SWI_D_curfxn
-0000b484 _SWI_D_curfxn
-0000b488 SWI_D_rdybeg
-0000b488 _SWI_D_rdybeg
-0000b48c SWI_D_inswi
-0000b48c _SWI_D_inswi
-0000b490 SWI_D_rdytab
-0000b508 _KNL_wFlag
-0000b50c _KNL_wList
-0000b510 _KNL_alarm
-0000b514 _KNL_setpri
-0000b518 _KNL_inactive
-0000b51c _KNL_priority
-0000b520 _KNL_set
-0000b524 _KNL_curtask
-0000b528 _KNL_prevtask
-0000b52c _KNL_curtime
-0000b530 _KNL_swiptr
-0000b534 _KNL_curqueue
-0000b538 _KNL_maxqueue
-0000b53c _KNL_tswitchfxn
-0000b540 _KNL_tcreatefxn
-0000b544 _KNL_tdeletefxn
-0000b548 _KNL_treadyfxn
-0000b54c _KNL_idlefxn
-0000b550 HWI_D_spsave
-0000b550 _HWI_D_spsave
-0000b550 _HWI_data
-0000b55c _HWI_D_inhwi
-0000b560 HWI_D_bss
-0000b564 HWI_D_ccmask
-0000b568 RTA_fromHost$pipe$dtab
-0000b574 RTA_toHost$pipe$dtab
-0000b580 LNK_dspFrameRequestMask
-0000b580 _LNK_dspFrameRequestMask
-0000b584 LNK_dspFrameReadyMask
-0000b584 _LNK_dspFrameReadyMask
-0000b588 LNK_readPend
-0000b588 _LNK_readPend
-0000b58c LNK_readDone
-0000b58c _LNK_readDone
-0000b590 LNK_readFail
-0000b590 _LNK_readFail
-0000b594 LNK_writeFail
-0000b594 _LNK_writeFail
-0000b5a0 _rtdxNullChanCnt
-0000b5a4 _rtdxNullFuncCnt
-0000b5a8 _TSK_nTasks
-0000b5ac _TSK_pid
-0000b5b0 _TSK
-0000b5b4 _CLK_DFLTMICROSECS
-0000b5b8 _CLK_D_microseconds
-0000b5bc _SYS_exitStackPtr
-0000b5c0 _SYS_exitStackTop
-0000b5c4 _DSK6713_AIC23_codeccontrolhandle
-0000b5c8 _DSK6713_AIC23_codecdatahandle
-0000b5cc _CLK_htimePerLtime
-0000b5d4 IDL_D_busyObj
-0000b5d8 _H_Codec
-0000b5dc _DSK6713_version
-0000b5de ___end__
-0000b5de end
-0000b5e0 _SYS_PUTCBEG
-0000b7df _SYS_PUTCEND
-0000b7e0 LOG_A_TABBEG
-0000b7e0 LOG_system
-0000b7e0 _LOG_A_TABBEG
-0000b7e0 _LOG_system
-0000b7f8 CLK_A_TABBEG
-0000b7f8 LOG_A_TABEND
-0000b7f8 PRD_clock
-0000b7f8 _LOG_A_TABEND
-0000b7f8 _PRD_clock
-0000b7fc CLK_null
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc64 HST_A_TABBEG
-0000bc64 _HST_A_TABBEG
-0000bc68 RTA_fromHost
-0000bc68 _RTA_fromHost
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000bc84 _RTA_toHost
-0000bc8c RTA_toHost$rtdx
-0000bca0 HST_A_TABEND
-0000bca0 KNL_swi$sts$stsobj
-0000bca0 STS_A_TABBEG
-0000bca0 _HST_A_TABEND
-0000bca0 _STS_A_TABBEG
-0000bca4 KNL_swi$sts
-0000bcb0 TSK_idle$sts$stsobj
-0000bcb4 TSK_idle$sts
-0000bcc0 IDL_busyObj$stsobj
-0000bcc4 IDL_busyObj
-0000bcc4 _IDL_busyObj
-0000bcd0 KNL_swi
-0000bcd0 STS_A_TABEND
-0000bcd0 SWI_A_TABBEG
-0000bcd0 _KNL_swi
-0000bcd0 _STS_A_TABEND
-0000bcfc SWI_A_TABEND
-0000bd24 IDL_A_CALBEG
-0000bd24 IDL_cpuLoad$
-0000bd28 LNK_dataPump$
-0000bd2c RTA_dispatcher$
-0000bd30 IDL_END$
-0000bd34 SYS$config
-0000bd44 ___pinit__
-0000bd44 pinit
-0000bd50 TRC_cinit
-0000bd54 TRC_R_mask
-0000bd54 _TRC_R_mask
-0000bd58 GBL_initdone
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[717 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/25/50c8e43a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/25/50c8e43a45070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/25/50c8e43a45070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/26/a07db26bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/26/a07db26bdd0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/26/a07db26bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/505f11afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/505f11afe50100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/505f11afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/50c7af173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/50c7af173f070018153483e962c7925e
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/50c7af173f070018153483e962c7925e
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/605bf16bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/605bf16bdd0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/27/605bf16bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/28/f098fa43610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/28/f098fa43610b001815de8ca47440e6f8
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/28/f098fa43610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/0033d1c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/0033d1c9e10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/0033d1c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/705292f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/705292f041070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/705292f041070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/f0298f53e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/f0298f53e50100181ce89bcacea45786
deleted file mode 100644
index bae5f55..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/29/f0298f53e50100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/6050cf8e41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/6050cf8e41070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/6050cf8e41070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/d07f037add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/d07f037add0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2b/d07f037add0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2c/b0a28450dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2c/b0a28450dd0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2c/b0a28450dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d02ebff041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d02ebff041070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d02ebff041070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d036bc2bdf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d036bc2bdf0100181ce89bcacea45786
deleted file mode 100644
index 5daacd2..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/d036bc2bdf0100181ce89bcacea45786
+++ /dev/null
@@ -1,163 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/e0af088f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/e0af088f41070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2e/e0af088f41070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/0035e624610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/0035e624610b001815de8ca47440e6f8
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/0035e624610b001815de8ca47440e6f8
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/3055c550dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/3055c550dd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/2f/3055c550dd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/0053df2de10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/0053df2de10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/0053df2de10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/b0948379cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/b0948379cd0100181ce89bcacea45786
deleted file mode 100644
index 1f831ca..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/30/b0948379cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718aeH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/009c10afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/009c10afe50100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/009c10afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/30739379cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/30739379cd0100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/30739379cd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/407fa9277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/407fa9277506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/407fa9277506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/700cfe98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/700cfe98d80100181ce89bcacea45786
deleted file mode 100644
index 1f831ca..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/700cfe98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718aeH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/e0098479cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/e0098479cd0100181ce89bcacea45786
deleted file mode 100644
index 1cd3e3e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/31/e0098479cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,1091 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "Thu Jan 18 13:48:06 2018", VERS$DATE
-
-;; PROLOGUE
- .include dsp_bios_cfg.h62
- .copy confbeg.s62
-
-;; TYPE HEADERS
- .include gbl.h62
- .include mem.h62
- .include obj.h62
- .include buf.h62
- .include pool.h62
- .include clk.h62
- .include prd.h62
- .include rtdx.h62
- .include hst.h62
- .include hwi.h62
- .include swi.h62
- .include tsk.h62
- .include idl.h62
- .include isrc.h62
- .include log.h62
- .include pip.h62
- .include sem.h62
- .include mbx.h62
- .include que.h62
- .include lck.h62
- .include sts.h62
- .include sys.h62
- .include sio.h62
- .include gio.h62
- .include dev.h62
- .include udev.h62
- .include dio.h62
- .include dgn.h62
- .include dhl.h62
- .include dpi.h62
- .include msgq.h62
- .include hook.h62
-
-;; TYPE ATTRIBUTES
-MEM$NUMOF .set 2
-MEM$SETOF .set 00H
-OBJ$NUMOF .set 0
-OBJ$SETOF .set 00H
-BUF$NUMOF .set 0
-BUF$SETOF .set 00H
-CLK$NUMOF .set 1
-CLK$SETOF .set 00H
-PRD$NUMOF .set 0
-PRD$SETOF .set 00H
-RTDX$NUMOF .set 0
-RTDX$SETOF .set 00H
-HST$NUMOF .set 2
-HST$SETOF .set 03H
-HWI$NUMOF .set 16
-HWI$SETOF .set 0ffffH
-SWI$NUMOF .set 1
-SWI$SETOF .set 00H
-TSK$NUMOF .set 1
-TSK$SETOF .set 00H
-IDL$NUMOF .set 3
-IDL$SETOF .set 00H
-ISRC$NUMOF .set 0
-ISRC$SETOF .set 00H
-LOG$NUMOF .set 1
-LOG$SETOF .set 00H
-PIP$NUMOF .set 0
-PIP$SETOF .set 00H
-SEM$NUMOF .set 0
-SEM$SETOF .set 00H
-MBX$NUMOF .set 0
-MBX$SETOF .set 00H
-QUE$NUMOF .set 0
-QUE$SETOF .set 00H
-LCK$NUMOF .set 0
-LCK$SETOF .set 00H
-STS$NUMOF .set 1
-STS$SETOF .set 00H
-SIO$NUMOF .set 0
-SIO$SETOF .set 00H
-DEV$NUMOF .set 0
-DEV$SETOF .set 00H
-UDEV$NUMOF .set 0
-UDEV$SETOF .set 00H
-DIO$NUMOF .set 0
-DIO$SETOF .set 00H
-DGN$NUMOF .set 0
-DGN$SETOF .set 00H
-DHL$NUMOF .set 0
-DHL$SETOF .set 00H
-DPI$NUMOF .set 0
-DPI$SETOF .set 00H
-HOOK$NUMOF .set 0
-HOOK$SETOF .set 00H
-
-;; module GBL (ROM, PROCID, CLKIN, FREQ, DSPTYPE, DSPSUBTYPE, CLKTYPE, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC)
- .global GBL$ ; == 1
- .global GBL_ROM ; dsp_bios_cfg.h62
- .global GBL_PROCID ; dsp_bios_cfg.h62
- .global GBL_CLKIN ; dsp_bios_cfg.h62
- .global GBL_FREQ ; dsp_bios_cfg.h62
- .global GBL_DSPTYPE ; dsp_bios_cfg.h62
- .global GBL_DSPSUBTYPE ; dsp_bios_cfg.h62
- .global GBL_CLKTYPE ; dsp_bios_cfg.h62
- .global GBL_BIGENDIAN ; dsp_bios_cfg.h62
- .global GBL_USERINIT ; dsp_bios_cfg.h62
- .global GBL_USERINITFXN ; dsp_bios_cfg.cmd
- .global GBL_ENABLEINST ; dsp_bios_cfg.h62
- .global GBL_CACHE ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGURE ; dsp_bios_cfg.h62
- .global GBL_L2MODE ; dsp_bios_cfg.h62
- .global GBL_L2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK ; dsp_bios_cfg.h62
- .global GBL_SUPPORTCSL ; dsp_bios_cfg.h62
- .global GBL_TRCMASKVALUE ; dsp_bios_cfg.h62
- .global GBL_CALLCSLCFGINIT ; dsp_bios_cfg.h62
- .global GBL_C641XL2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK1 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK2 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK3 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK4 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK5 ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGALLOC ; dsp_bios_cfg.h62
- .global GBL_L2ALLOC ; dsp_bios_cfg.h62
-
-;; module MEM (gNumHeap, SEGZERO, MALLOCSEG, USEMPC)
- .global MEM$ ; == 1
- .global MEM_gNumHeap ; dsp_bios_cfg.h62
- .global MEM_SEGZERO ; dsp_bios_cfg.cmd
- .global MEM_MALLOCSEG ; dsp_bios_cfg.cmd
- .global MEM_USEMPC ; dsp_bios_cfg.h62
-
-;; module OBJ ()
- .global OBJ$ ; == 0
-
-;; module BUF (ENABLED)
- .global BUF$ ; == 0
- .global BUF_ENABLED ; dsp_bios_cfg.h62
-
-;; module POOL (USEPOOL)
- .global POOL$ ; == 0
- .global POOL_USEPOOL ; dsp_bios_cfg.h62
-
-;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, MICROSECS, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN, CALDIV, CALMULT, HTIMEDIV, HTIMEMULT, LTIMEDIV, LTIMEMULT, HTIMEPERLTIME)
- .global CLK$ ; == 1
- .global CLK_INTBIT ; dsp_bios_cfg.h62
- .global CLK_REGS ; dsp_bios_cfg.h62
- .global CLK_TIMERNUM ; dsp_bios_cfg.h62
- .global CLK_USETIMER ; dsp_bios_cfg.h62
- .global CLK_MICROSECS ; dsp_bios_cfg.h62
- .global CLK_TCR ; dsp_bios_cfg.h62
- .global CLK_TDDR ; dsp_bios_cfg.h62
- .global CLK_TDDRHIGH ; dsp_bios_cfg.h62
- .global CLK_PRD ; dsp_bios_cfg.h62
- .global CLK_PRDHIGH ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMS ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMSHIGH ; dsp_bios_cfg.h62
- .global CLK_TIMEFXN ; dsp_bios_cfg.cmd
- .global CLK_HOOKFXN ; dsp_bios_cfg.cmd
- .global CLK_CALDIV ; dsp_bios_cfg.h62
- .global CLK_CALMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_HTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_LTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_LTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEPERLTIME ; dsp_bios_cfg.h62
-
-;; module PRD (SCALAR, THOOKFXN)
- .global PRD$ ; == 1
- .global PRD_SCALAR ; dsp_bios_cfg.h62
- .global PRD_THOOKFXN ; dsp_bios_cfg.cmd
-
-;; module RTDX (USERTDX, USERTEXECUTION, RTDXTYPE, DATAMEMSEG, BUFMEMSIZE)
- .global RTDX$ ; == 1
- .global RTDX_USERTDX ; dsp_bios_cfg.h62
- .global RTDX_USERTEXECUTION ; dsp_bios_cfg.h62
- .global RTDX_RTDXTYPE ; dsp_bios_cfg.h62
- .global RTDX_DATAMEMSEG ; dsp_bios_cfg.cmd
- .global RTDX_BUFMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE)
- .global HST$ ; == 1
- .global HST_RTDX ; dsp_bios_cfg.h62
- .global HST_DSM ; dsp_bios_cfg.h62
- .global HST_NONE ; dsp_bios_cfg.h62
- .global HST_MAXFRAMESET ; dsp_bios_cfg.h62
- .global HST_MAXFRAMEALLOWED ; dsp_bios_cfg.h62
- .global HST_DSMBUFSEG ; dsp_bios_cfg.cmd
- .global HST_DSMMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH, CFGDISPATCHED)
- .global HWI$ ; == 1
- .global HWI_ZEROTAB ; dsp_bios_cfg.h62
- .global HWI_GENERATE_RESET_VEC ; dsp_bios_cfg.h62
- .global HWI_POLARITYMASK ; dsp_bios_cfg.h62
- .global HWI_INTRMULTLOW ; dsp_bios_cfg.h62
- .global HWI_INTRMULTHIGH ; dsp_bios_cfg.h62
- .global HWI_CFGDISPATCHED ; dsp_bios_cfg.h62
-
-;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN)
- .global SWI$ ; == 1
- .global SWI_EHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_IHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_EXECFXN ; dsp_bios_cfg.cmd
- .global SWI_RUNFXN ; dsp_bios_cfg.cmd
-
-;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS)
- .global TSK$ ; == 1
- .global TSK_STACKSIZE ; dsp_bios_cfg.h62
- .global TSK_STACKSEG ; dsp_bios_cfg.cmd
- .global TSK_PRIORITY ; dsp_bios_cfg.h62
- .global TSK_VCREATEFXN ; dsp_bios_cfg.cmd
- .global TSK_VDELETEFXN ; dsp_bios_cfg.cmd
- .global TSK_VEXITFXN ; dsp_bios_cfg.cmd
- .global TSK_SWITCHFXN ; dsp_bios_cfg.h62
- .global TSK_READYFXN ; dsp_bios_cfg.h62
- .global TSK_NUM_HOOKS ; dsp_bios_cfg.h62
-
-;; module IDL (USECLKIDLTIME, CALIBRFXN, CALIBRERROR)
- .global IDL$ ; == 1
- .global IDL_USECLKIDLTIME ; dsp_bios_cfg.h62
- .global IDL_CALIBRFXN ; dsp_bios_cfg.cmd
- .global IDL_CALIBRERROR ; dsp_bios_cfg.h62
-
-;; module ISRC ()
- .global ISRC$ ; == 1
-
-;; module LOG (ENABLED)
- .global LOG$ ; == 1
- .global LOG_ENABLED ; dsp_bios_cfg.h62
-
-;; module PIP (gNumEmbed, gNextId, OBJSIZE)
- .global PIP$ ; == 0
- .global PIP_gNumEmbed ; dsp_bios_cfg.h62
- .global PIP_gNextId ; dsp_bios_cfg.h62
- .global PIP_OBJSIZE ; dsp_bios_cfg.h62
-
-;; module SEM ()
- .global SEM$ ; == 0
-
-;; module MBX ()
- .global MBX$ ; == 0
-
-;; module QUE ()
- .global QUE$ ; == 1
-
-;; module LCK ()
- .global LCK$ ; == 1
-
-;; module STS ()
- .global STS$ ; == 1
-
-;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
- .global SYS$ ; == 1
- .global SYS_ABORTFXN ; dsp_bios_cfg.cmd
- .global SYS_ERRORFXN ; dsp_bios_cfg.cmd
- .global SYS_EXITFXN ; dsp_bios_cfg.cmd
- .global SYS_PUTCFXN ; dsp_bios_cfg.cmd
-
-;; module SIO ()
- .global SIO$ ; == 0
-
-;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN)
- .global GIO$ ; == 0
- .global GIO_CREATEFXN ; dsp_bios_cfg.cmd
- .global GIO_DELETEFXN ; dsp_bios_cfg.cmd
- .global GIO_PENDFXN ; dsp_bios_cfg.cmd
- .global GIO_POSTFXN ; dsp_bios_cfg.cmd
-
-;; module DEV ()
- .global DEV$ ; == 0
-
-;; module UDEV ()
- .global UDEV$ ; == 0
-
-;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE)
- .global DIO$ ; == 0
- .global DIO_STATIC ; dsp_bios_cfg.h62
- .global DIO_NUMTSKBASE ; dsp_bios_cfg.h62
- .global DIO_NUMSWIBASE ; dsp_bios_cfg.h62
-
-;; module DGN ()
- .global DGN$ ; == 0
-
-;; module DHL (gChannelsAvailable)
- .global DHL$ ; == 0
- .global DHL_gChannelsAvailable ; dsp_bios_cfg.h62
-
-;; module DPI ()
- .global DPI$ ; == 0
-
-;; module MSGQ (USEMSGQ)
- .global MSGQ$ ; == 0
- .global MSGQ_USEMSGQ ; dsp_bios_cfg.h62
-
-;; module HOOK (KNLID)
- .global HOOK$ ; == 0
- .global HOOK_KNLID ; dsp_bios_cfg.h62
-
-;; MODULE CONFIGURATION
-
-;; ======== GBL_config ========
- .asg 00H, _ROM
- .asg 00H, _PROCID
- .asg 04e20H, _CLKIN
- .asg 036ee8H, _FREQ
- .asg 03eH, _DSPTYPE
- .asg 01a39H, _DSPSUBTYPE
- .asg 01770H, _CLKTYPE
- .asg 00H, _BIGENDIAN
- .asg 01H, _USERINIT
- .asg _GBL_setPLLto225MHz, _USERINITFXN
- .asg 01H, _ENABLEINST
- .asg 00H, _CACHE
- .asg 01H, _L2CONFIGURE
- .asg 00H, _L2MODE
- .asg 00H, _L2PRIORITY
- .asg 01H, _L2MARMASK
- .asg 00H, _SUPPORTCSL
- .asg 0dbefH, _TRCMASKVALUE
- .asg 01H, _CALLCSLCFGINIT
- .asg 00H, _C641XL2PRIORITY
- .asg 00H, _L2MARMASK1
- .asg 00H, _L2MARMASK2
- .asg 00H, _L2MARMASK3
- .asg 00H, _L2MARMASK4
- .asg 00H, _L2MARMASK5
- .asg 00H, _L2CONFIGALLOC
- .asg 02226H, _L2ALLOC
- GBL_config _ROM, _PROCID, _CLKIN, _FREQ, _DSPTYPE, _DSPSUBTYPE, _CLKTYPE, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC
-
-;; ======== MEM_config ========
- .asg 00H, _gNumHeap
- .asg MEM_NULL, _SEGZERO
- .asg MEM_NULL, _MALLOCSEG
- .asg 00H, _USEMPC
- MEM_config _gNumHeap, _SEGZERO, _MALLOCSEG, _USEMPC
-
-;; ======== OBJ_config ========
- OBJ_config
-
-;; ======== BUF_config ========
- .asg 01H, _ENABLED
- BUF_config _ENABLED
-
-;; ======== POOL_config ========
- .asg 00H, _USEPOOL
- POOL_config _USEPOOL
-
-;; ======== CLK_config ========
- .asg 04000H, _INTBIT
- .asg 01940000H, _REGS
- .asg 00H, _TIMERNUM
- .asg 01H, _USETIMER
- .asg 03e8H, _MICROSECS
- .asg 020H, _TCR
- .asg 00H, _TDDR
- .asg 00H, _TDDRHIGH
- .asg 0dbbaH, _PRD
- .asg 00H, _PRDHIGH
- .asg 0dbbaH, _COUNTSPMS
- .asg 00H, _COUNTSPMSHIGH
- .asg CLK_F_getshtime, _TIMEFXN
- .asg HWI_F_dispatch, _HOOKFXN
- .asg 01H, _CALDIV
- .asg 04H, _CALMULT
- .asg 01H, _HTIMEDIV
- .asg 04H, _HTIMEMULT
- .asg 01H, _LTIMEDIV
- .asg 036ee8H, _LTIMEMULT
- .asg 0dbbaH, _HTIMEPERLTIME
- CLK_config _INTBIT, _REGS, _TIMERNUM, _USETIMER, _MICROSECS, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN, _CALDIV, _CALMULT, _HTIMEDIV, _HTIMEMULT, _LTIMEDIV, _LTIMEMULT, _HTIMEPERLTIME
-
-;; ======== PRD_config ========
- .asg 04000H, _SCALAR
- .asg _KNL_tick, _THOOKFXN
- PRD_config _SCALAR, _THOOKFXN
-
-;; ======== RTDX_config ========
- .asg 01H, _USERTDX
- .asg 00H, _USERTEXECUTION
- .asg "JTAG", _RTDXTYPE
- .asg IRAM, _DATAMEMSEG
- .asg 0408H, _BUFMEMSIZE
- RTDX_config _USERTDX, _USERTEXECUTION, _RTDXTYPE, _DATAMEMSEG, _BUFMEMSIZE
-
-;; ======== HST_config ========
- .asg 01H, _RTDX
- .asg 00H, _DSM
- .asg 00H, _NONE
- .asg 040H, _MAXFRAMESET
- .asg 0ffH, _MAXFRAMEALLOWED
- .asg IRAM, _DSMBUFSEG
- .asg 0400H, _DSMMEMSIZE
- HST_config _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE
-
-;; ======== HWI_config ========
- .asg 01H, _ZEROTAB
- .asg 00H, _GENERATE_RESET_VEC
- .asg 00H, _POLARITYMASK
- .asg 0310718aeH, _INTRMULTLOW
- .asg 082039a3H, _INTRMULTHIGH
- .asg 04018H, _CFGDISPATCHED
- HWI_config _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH, _CFGDISPATCHED
-
-;; ======== SWI_config ========
- .asg GBL_NULL, _EHOOKFXN
- .asg GBL_NULL, _IHOOKFXN
- .asg SWI_F_exec, _EXECFXN
- .asg SWI_F_run, _RUNFXN
- SWI_config _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN
-
-;; ======== TSK_config ========
- .asg 0400H, _STACKSIZE
- .asg MEM_NULL, _STACKSEG
- .asg 01H, _PRIORITY
- .asg _FXN_F_nop, _VCREATEFXN
- .asg _FXN_F_nop, _VDELETEFXN
- .asg _FXN_F_nop, _VEXITFXN
- .asg 00H, _SWITCHFXN
- .asg 00H, _READYFXN
- .asg 00H, _NUM_HOOKS
- TSK_config _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS
-
-;; ======== IDL_config ========
- .asg 01H, _USECLKIDLTIME
- .asg IDL_F_stub, _CALIBRFXN
- .asg 06H, _CALIBRERROR
- IDL_config _USECLKIDLTIME, _CALIBRFXN, _CALIBRERROR
-
-;; ======== ISRC_config ========
- ISRC_config
-
-;; ======== LOG_config ========
- .asg 01H, _ENABLED
- LOG_config _ENABLED
-
-;; ======== PIP_config ========
- .asg 02H, _gNumEmbed
- .asg 00H, _gNextId
- .asg 064H, _OBJSIZE
- PIP_config _gNumEmbed, _gNextId, _OBJSIZE
-
-;; ======== SEM_config ========
- SEM_config
-
-;; ======== MBX_config ========
- MBX_config
-
-;; ======== QUE_config ========
- QUE_config
-
-;; ======== LCK_config ========
- LCK_config
-
-;; ======== STS_config ========
- STS_config
-
-;; ======== SYS_config ========
- .asg _UTL_doAbort, _ABORTFXN
- .asg _UTL_doError, _ERRORFXN
- .asg _UTL_halt, _EXITFXN
- .asg _UTL_doPutc, _PUTCFXN
- SYS_config _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN
-
-;; ======== SIO_config ========
- SIO_config
-
-;; ======== GIO_config ========
- .asg _FXN_F_nop, _CREATEFXN
- .asg _FXN_F_nop, _DELETEFXN
- .asg _FXN_F_nop, _PENDFXN
- .asg _FXN_F_nop, _POSTFXN
- GIO_config _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN
-
-;; ======== DEV_config ========
- DEV_config
-
-;; ======== UDEV_config ========
- UDEV_config
-
-;; ======== DIO_config ========
- .asg 00H, _STATIC
- .asg 00H, _NUMTSKBASE
- .asg 00H, _NUMSWIBASE
- DIO_config _STATIC, _NUMTSKBASE, _NUMSWIBASE
-
-;; ======== DGN_config ========
- DGN_config
-
-;; ======== DHL_config ========
- .asg 00H, _gChannelsAvailable
- DHL_config _gChannelsAvailable
-
-;; ======== DPI_config ========
- DPI_config
-
-;; ======== MSGQ_config ========
- .asg 00H, _USEMSGQ
- MSGQ_config _USEMSGQ
-
-;; ======== HOOK_config ========
- .asg 00H, _KNLID
- HOOK_config _KNLID
-
-;; ======== MEM_Obj SDRAM ========
-;; This object defines 8MB for the DSP's off-chip memory
-;;
-;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global SDRAM
- .asg 0800000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== MEM_Obj IRAM ========
-;; Internal L2 memory
-;;
-;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global IRAM
- .asg 040000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== CLK_Obj PRD_clock ========
-;; This clock function calls PRD_tick from within the on-chip timer ISR
-;;
-;; CLK_Obj PRD_clock (function)
- .global PRD_clock
- .asg PRD_F_tick, _function
- CLK_Obj 1, PRD_clock, 0, _function
-
-;; ======== HST_Obj RTA_fromHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_fromHost
- .asg "input", _mode
- .asg "<NULL>", _buf
- .asg 04H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HST_Obj RTA_toHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_toHost
- .asg "output", _mode
- .asg "<NULL>", _buf
- .asg 040H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HWI_Obj HWI_RESET ========
-;; defines function for the RESET ISR
-;;
-;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESET
- .asg _c_int00, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_NMI ========
-;; defines function for the NMI ISR
-;;
-;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_NMI
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED0 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED0
- .asg RESERVED, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 04H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED1 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED1
- .asg _RTDX_Poll, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT4 ========
-;; defines the INT4 Interrupt
-;;
-;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT4
- .asg _ISR_AIC, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 010H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT5 ========
-;; defines the INT5 Interrupt
-;;
-;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT5
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 020H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT6 ========
-;; defines the INT6 Interrupt
-;;
-;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT6
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 040H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT7 ========
-;; defines the INT7 Interrupt
-;;
-;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT7
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 080H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT8 ========
-;; defines the INT8 Interrupt
-;;
-;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT8
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0100H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT9 ========
-;; defines the INT9 Interrupt
-;;
-;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT9
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0200H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT10 ========
-;; defines the INT10 Interrupt
-;;
-;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT10
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0400H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT11 ========
-;; defines the INT11 Interrupt
-;;
-;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT11
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0800H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT12 ========
-;; defines the INT12 Interrupt
-;;
-;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT12
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT13 ========
-;; defines the INT13 Interrupt
-;;
-;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT13
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT14 ========
-;; defines the INT14 Interrupt
-;;
-;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT14
- .asg CLK_F_isr, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "CLK", _client
- .asg 01H, _iUseDispatcher
- .asg CLK_A_TABBEG, _iArg
- .asg 04000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT15 ========
-;; defines the INT15 Interrupt
-;;
-;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT15
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== SWI_Obj KNL_swi ========
-;; This Software Interrupt calls the TSK scheduler
-;;
-;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global KNL_swi
- .asg _KNL_run, _function
- .asg 00H, _pri
- .asg 00H, _mailbox
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg 01H, _dorta
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== TSK_Obj TSK_idle ========
-;; This is the idle task; it only runs when no other task is ready
-;;
-;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global TSK_idle
- .asg IDL_F_loop, _iFXN
- .asg 00H, _iARG0
- .asg 00H, _iARG1
- .asg 00H, _iARG2
- .asg 00H, _iARG3
- .asg 00H, _iARG4
- .asg 00H, _iARG5
- .asg 00H, _iARG6
- .asg 00H, _iARG7
- .asg 01H, _iAUTOSTK
- .asg null, _iMANSTK
- .asg 0400H, _iSTKSZ
- .asg IRAM, _iSTKSEG
- .asg 00H, _iPRI
- .asg 00H, _iENV
- .asg 01H, _iEXITFLAG
- .asg 00H, _iUSETSKNAME
- .asg 00H, _iSTATREG
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== IDL_Obj IDL_cpuLoad ========
-;; This object is required by the system to acquire CPU load data
-;;
-;; IDL_Obj IDL_cpuLoad (function, calibration)
- .global IDL_cpuLoad
- .asg IDL_F_busy, _function
- .asg 01H, _calibration
- IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration
-
-;; ======== IDL_Obj LNK_dataPump ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj LNK_dataPump (function, calibration)
- .global LNK_dataPump
- .asg LNK_F_dataPump, _function
- .asg 01H, _calibration
- IDL_Obj 1, LNK_dataPump, 0, _function, _calibration
-
-;; ======== IDL_Obj RTA_dispatcher ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj RTA_dispatcher (function, calibration)
- .global RTA_dispatcher
- .asg RTA_F_dispatch, _function
- .asg 01H, _calibration
- IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration
-
-;; ======== LOG_Obj LOG_system ========
-;; This object is required by the system to accumulate execution trace information
-;;
-;; LOG_Obj LOG_system (bufseg, buflen, logtype, iType, iFormat)
- .global LOG_system
- .asg IRAM, _bufseg
- .asg 040H, _buflen
- .asg "circular", _logtype
- .asg "system", _iType
- .asg "0x%x, 0x%x, 0x%x", _iFormat
- LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype, _iType, _iFormat
-
-;; ======== STS_Obj IDL_busyObj ========
-;; This object is required by the system to accumulate CPU load statistics
-;;
-;; STS_Obj IDL_busyObj (prev, filter, maxformat, sumformat, avgformat, op, uType, iA, iB, iC, prevlow)
- .global IDL_busyObj
- .asg 00H, _prev
- .asg 01H, _filter
- .asg "%g", _maxformat
- .asg "%g", _sumformat
- .asg "%.2f", _avgformat
- .asg 00H, _op
- .asg 02H, _uType
- .asg 01H, _iA
- .asg 00H, _iB
- .asg 01H, _iC
- .asg 00H, _prevlow
- STS_Obj 1, IDL_busyObj, 0, _prev, _filter, _maxformat, _sumformat, _avgformat, _op, _uType, _iA, _iB, _iC, _prevlow
-
-;; MODULE INITIALIZATION
- .sect ".sysinit"
- .global BIOS_init, _BIOS_init
-BIOS_init:
-_BIOS_init:
- GBL_preamble
- GBL_init
- SEM_init
- MEM_init
- OBJ_init
- BUF_init
- POOL_init
- CLK_init
- PRD_init
- RTDX_init
- IDL_init
- LCK_init
- LOG_init
- MBX_init
- PIP_init
- QUE_init
- STS_init
- SYS_init
- HWI_init
- HST_init
- DEV_init
- UDEV_init
- DIO_init
- DGN_init
- DHL_init
- DPI_init
- SIO_init
- GIO_init
- MSGQ_init
- SWI_init
- HOOK_init
- TSK_init
- ISRC_init
- GBL_postamble
-
-;; MODULE STARTUP
- .sect ".sysinit"
- .global BIOS_start, _BIOS_start
-BIOS_start:
-_BIOS_start:
- GBL_preamble
- GBL_startup
- SEM_startup
- MEM_startup
- OBJ_startup
- BUF_startup
- POOL_startup
- CLK_startup
- PRD_startup
- RTDX_startup
- IDL_startup
- LCK_startup
- LOG_startup
- MBX_startup
- PIP_startup
- QUE_startup
- STS_startup
- SYS_startup
- HWI_startup
- HST_startup
- DEV_startup
- UDEV_startup
- DIO_startup
- DGN_startup
- DHL_startup
- DPI_startup
- SIO_startup
- GIO_startup
- MSGQ_startup
- SWI_startup
- HOOK_startup
- TSK_startup
- ISRC_startup
- GBL_postamble
-
-;; EPILOGUE
- GBL_end
- MEM_end
- OBJ_end
- BUF_end
- POOL_end
- CLK_end
- PRD_end
- RTDX_end
- HST_end
- HWI_end
- SWI_end
- TSK_end
- IDL_end
- ISRC_end
- LOG_end
- PIP_end
- SEM_end
- MBX_end
- QUE_end
- LCK_end
- STS_end
- SYS_end
- SIO_end
- GIO_end
- DEV_end
- UDEV_end
- DIO_end
- DGN_end
- DHL_end
- DPI_end
- MSGQ_end
- HOOK_end
-
- .copy confend.s62
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20c3e955e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20c3e955e20100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20c3e955e20100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20ebadd3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20ebadd3e10100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/20ebadd3e10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/c0057b50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/c0057b50dd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/32/c0057b50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/0038e743610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/0038e743610b001815de8ca47440e6f8
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/0038e743610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/20faede4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/20faede4e50100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/20faede4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/90a9b281dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/90a9b281dd0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/90a9b281dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/c0d8e855e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/c0d8e855e20100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/33/c0d8e855e20100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/105cfa6bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/105cfa6bdd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/105cfa6bdd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/b0c985d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/b0c985d3e10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/34/b0c985d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/90b6ef55e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/90b6ef55e20100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/90b6ef55e20100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/e0029a79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/e0029a79cd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/35/e0029a79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/36/f0ad734c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/36/f0ad734c7506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/36/f0ad734c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/5035a7277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/5035a7277506001814daa3a49c232c18
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/5035a7277506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/6082132ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/6082132ee10100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/6082132ee10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/80ef794c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/80ef794c7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/80ef794c7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/a08be53a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/a08be53a45070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/a08be53a45070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c01dc1e4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c01dc1e4e50100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c01dc1e4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c07012afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c07012afe50100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/37/c07012afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/60afae277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/60afae277506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/60afae277506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/806bbef041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/806bbef041070018153483e962c7925e
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/38/806bbef041070018153483e962c7925e
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/40f3ddaee50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/40f3ddaee50100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/40f3ddaee50100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/60d890d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/60d890d57506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/39/60d890d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/2089ebe4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/2089ebe4e50100181ce89bcacea45786
deleted file mode 100644
index 9a67e16..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/2089ebe4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:37:44 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/504e62d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/504e62d57506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3a/504e62d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/00e2f26bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/00e2f26bdd0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/00e2f26bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/104f7b4c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/104f7b4c7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3b/104f7b4c7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/6094e5aee50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/6094e5aee50100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/6094e5aee50100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/60cd484c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/60cd484c7506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3c/60cd484c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/50df048f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/50df048f41070018153483e962c7925e
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/50df048f41070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/702cf955e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/702cf955e20100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/702cf955e20100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d035b850dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d035b850dd0100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/d035b850dd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e002c750dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e002c750dd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3d/e002c750dd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/30a8bdf041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/30a8bdf041070018153483e962c7925e
deleted file mode 100644
index 7515fd8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/30a8bdf041070018153483e962c7925e
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Feb 01 11:17:59 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/c007bff041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/c007bff041070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3e/c007bff041070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/102c7d79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/102c7d79cd0100181ce89bcacea45786
deleted file mode 100644
index da1e893..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/102c7d79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 18 13:48:06 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iEventId :: 14
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/204eee6bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/204eee6bdd0100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/204eee6bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/20728011e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/20728011e10100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/3f/20728011e10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00052b7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00052b7add0100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00052b7add0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00c2cec9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00c2cec9e10100181ce89bcacea45786
deleted file mode 100644
index a6b884a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/00c2cec9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,1744 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 15:05:31 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a120
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000b53b 00034ac5 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00001ba0
- 000043c0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004840 000002e0 : dsk6713_aic23_opencodec.obj (.text)
- 00004b20 000002a0 intio.obj (.text)
- 00004dc0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005000 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000051c0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005360 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 000054e0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005660 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 000057a0 00000120 : sinit.obj (.text:_call_dtors)
- 000058c0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000059c0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00005ac0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00005bc0 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00005ca0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00005d60 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00005e00 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00005e40 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00005e80 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00005ea0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00005ec0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00005ee0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00005f00 00000020 : _lock.obj (.text:__register_lock)
- 00005f20 00000020 : _lock.obj (.text:__register_unlock)
- 00005f40 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00005f60 00001734
- 00005f60 00000800 intio.obj (.cinit)
- 00006760 00000564 dsp_bios_cfg.obj (.cinit)
- 00006cc4 00000004 --HOLE-- [fill = 0]
- 00006cc8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00006f34 00000004 --HOLE-- [fill = 0]
- 00006f38 000001a4 : knl.o67 (.cinit)
- 000070dc 00000004 --HOLE-- [fill = 0]
- 000070e0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 0000720c 00000004 --HOLE-- [fill = 0]
- 00007210 000000b0 bios.a67 : swi.o67 (.cinit)
- 000072c0 00000070 : tsk.o67 (.cinit)
- 00007330 00000060 : tsk_stup.o67 (.cinit)
- 00007390 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 000073ec 00000004 --HOLE-- [fill = 0]
- 000073f0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007444 00000004 --HOLE-- [fill = 0]
- 00007448 0000004c bios.a67 : rta.o67 (.cinit)
- 00007494 00000004 --HOLE-- [fill = 0]
- 00007498 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 000074e4 00000004 --HOLE-- [fill = 0]
- 000074e8 00000034 bios.a67 : hwi.o67 (.cinit)
- 0000751c 00000004 --HOLE-- [fill = 0]
- 00007520 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007550 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 0000757c 00000004 --HOLE-- [fill = 0]
- 00007580 0000002c rts6700.lib : exit.obj (.cinit)
- 000075ac 00000004 --HOLE-- [fill = 0]
- 000075b0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 000075d4 00000004 --HOLE-- [fill = 0]
- 000075d8 0000001c : sys.o67 (.cinit)
- 000075f4 00000004 --HOLE-- [fill = 0]
- 000075f8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007614 00000004 --HOLE-- [fill = 0]
- 00007618 0000001c : atexit.obj (.cinit)
- 00007634 00000004 --HOLE-- [fill = 0]
- 00007638 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007650 0000000c : gbl_setL2CacheMode.o67 (.cinit)
- 0000765c 00000004 --HOLE-- [fill = 0]
- 00007660 0000000c : idl_busy.o67 (.cinit)
- 0000766c 00000004 --HOLE-- [fill = 0]
- 00007670 0000000c : knl_swit.o67 (.cinit)
- 0000767c 00000004 --HOLE-- [fill = 0]
- 00007680 0000000c rts6700.lib : sinit.obj (.cinit)
- 0000768c 00000004 --HOLE-- [fill = 0]
- 00007690 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007694 00000004
- 00007694 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007698 000014c0 UNINITIALIZED
- 00007698 00000fb8 intio.obj (.far)
- 00008650 00000188 rts6700.lib : atexit.obj (.far)
- 000087d8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000088cc 000000d8 bios.a67 : knl.o67 (.far)
- 000089a4 0000005c : tsk.o67 (.far)
- 00008a00 00000054 : obj_init.o67 (.far)
- 00008a54 00000050 : tsk_stup.o67 (.far)
- 00008aa4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 00008adc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00008b04 00000020 bios.a67 : sys.o67 (.far)
- 00008b24 00000010 : knl_tick.o67 (.far)
- 00008b34 0000000c : utl_putc.o67 (.far)
- 00008b40 0000000c rts6700.lib : exit.obj (.far)
- 00008b4c 00000008 : _lock.obj (.far)
- 00008b54 00000004 : sinit.obj (.far)
-
-.clk 0 00008b58 00000008 UNINITIALIZED
- 00008b58 00000008 dsp_bios_cfg.obj (.clk)
-
-.rtdx_text
-* 0 00008b60 00000ea0
- 00008b60 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00008f60 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 000092a0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 000095a0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 000096e0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 000097c0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 00009840 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 000098a0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 00009900 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 00009940 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 00009980 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 000099a0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 000099c0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 000099e0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 00009a00 0000044c UNINITIALIZED
- 00009a00 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 00009e10 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 00009e30 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 00009e4c 00000010 UNINITIALIZED
- 00009e4c 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 00009e60 00000420
- 00009e60 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a120 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a1e0 00000080 : tsk_init.o67 (.sysinit)
- 0000a260 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000a280 00000400 UNINITIALIZED
- 0000a280 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000a680 00000400 UNINITIALIZED
- 0000a680 00000400 --HOLE--
-
-.bss 0 0000aa80 0000033e UNINITIALIZED
- 0000aa80 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000ab80 000000cc : biosdata.o67 (.bss)
- 0000ac4c 0000009c : swi.o67 (.bss)
- 0000ace8 00000048 : knl.o67 (.bss)
- 0000ad30 00000018 : hwi.o67 (.bss)
- 0000ad48 00000018 dsp_bios_cfg.obj (.bss)
- 0000ad60 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000ad78 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000ad88 0000000c bios.a67 : tsk.o67 (.bss)
- 0000ad94 00000008 : clk_data.o67 (.bss)
- 0000ad9c 00000008 : sys.o67 (.bss)
- 0000ada4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000adac 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000adb0 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000adb4 00000004 : idl_busy.o67 (.bss)
- 0000adb8 00000004 intio.obj (.bss)
- 0000adbc 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000adc0 00000200
- 0000adc0 00000200 --HOLE-- [fill = 00000000]
-
-.gblinit 0 0000afc0 00000040
- 0000afc0 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.LOG_system$buf
-* 0 0000b000 00000100 UNINITIALIZED
- 0000b000 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b100 00000100 UNINITIALIZED
- 0000b100 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000b200 000000f9
- 0000b200 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000b24e 00000002 --HOLE-- [fill = 0]
- 0000b250 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000b290 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000b2b3 00000022 : utl_doer.o67 (.const)
- 0000b2d5 00000003 --HOLE-- [fill = 0]
- 0000b2d8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000b2f8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000b2f9 0000003f COPY SECTION
- 0000b2f9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000b2fc 000000c8 UNINITIALIZED
- 0000b2fc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000b3c4 00000060 UNINITIALIZED
- 0000b3c4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.hst 0 0000b424 0000003c UNINITIALIZED
- 0000b424 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000b460 00000030
- 0000b460 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000b490 0000002c UNINITIALIZED
- 0000b490 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000b4bc 00000028
- 0000b4bc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000b4e4 00000018
- 0000b4e4 00000018 dsp_bios_cfg.obj (.log)
-
-.idl 0 0000b4fc 00000010 UNINITIALIZED
- 0000b4fc 00000010 dsp_bios_cfg.obj (.idl)
-
-.idlcal 0 0000b50c 00000010 UNINITIALIZED
- 0000b50c 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000b51c 00000010 UNINITIALIZED
- 0000b51c 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000b52c 0000000c
- 0000b52c 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000b530 00000004 : rtdx_mon.o62 (.pinit)
- 0000b534 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000b538 0000000c
- 0000b538 0000000c bios.a67 : trc.o67 (.trcdata)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000aa80 $bss
-0000aa80 .bss
-00000000 .data
-000043c0 .text
-0000a004 BIOS$$CLKOFF
-00009fc4 BIOS$$CLKON
-00009e60 BIOS_init
-0000a06c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-00008b58 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000aba8 CLK_D_idletime
-0000aba4 CLK_D_isrhook
-0000aba0 CLK_D_tabbeg
-0000ab9c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000ab98 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-00008b5c CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005388 GBL_USERINITFXN
-00000001 GBL_boot
-0000b540 GBL_initdone
-0000a680 GBL_stackbeg
-0000aa7f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000b424 HST_A_TABBEG
-0000b460 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000ac14 HST_D_chanmask
-0000ac18 HST_D_tabbeg
-0000ac1c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000ad40 HWI_D_bss
-0000ad44 HWI_D_ccmask
-0000ad30 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000b50c IDL_A_CALBEG
-0000b4fc IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000adb4 IDL_D_busyObj
-0000ab88 IDL_D_calbeg
-0000ab84 IDL_D_calibrate
-0000ab80 IDL_D_tabbeg
-0000b508 IDL_END
-0000b518 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000b484 IDL_busyObj
-0000b333 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000b32d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000b480 IDL_busyObj$stsobj
-0000b330 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000b4fc IDL_cpuLoad
-0000b50c IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000b490 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000b464 KNL_swi$sts
-0000b309 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000b2f9 KNL_swi$sts$maxfmt
-0000b460 KNL_swi$sts$stsobj
-0000b301 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000b500 LNK_dataPump
-0000b510 LNK_dataPump$
-0000ad64 LNK_dspFrameReadyMask
-0000ad60 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000ad6c LNK_readDone
-0000ad70 LNK_readFail
-0000ad68 LNK_readPend
-00000370 LNK_rrloop
-0000ad74 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b4e4 LOG_A_TABBEG
-0000b4fc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000ab8c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b4e4 LOG_system
-0000b000 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000b2fc PIP_A_TABBEG
-0000b3c4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000ab90 PIP_D_tabbeg
-0000ab94 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000abd0 PRD_D_cur
-0000abd4 PRD_D_elapsed
-0000abd8 PRD_D_prevtim
-0000abdc PRD_D_scalar
-0000abe0 PRD_D_swihandle
-0000abe4 PRD_D_tabbeg
-0000abe8 PRD_D_tablen
-0000abec PRD_D_thook
-0000abcc PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-00008b58 PRD_clock
-00000001 QUE$
-0000abf0 RTA_D_fromHost
-0000abf8 RTA_D_logval
-0000ac08 RTA_D_stsval
-0000abf4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000b504 RTA_dispatcher
-0000b514 RTA_dispatcher$
-00001f28 RTA_execute
-0000b428 RTA_fromHost
-00009e4c RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000b2fc RTA_fromHost$pipe
-0000b32c RTA_fromHost$pipe$aaa
-0000b35c RTA_fromHost$pipe$bbb
-0000ad48 RTA_fromHost$pipe$dtab
-0000b300 RTA_fromHost$pipe$rd
-0000b330 RTA_fromHost$pipe$wr
-0000b430 RTA_fromHost$rtdx
-0000b444 RTA_toHost
-0000b100 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000b360 RTA_toHost$pipe
-0000b390 RTA_toHost$pipe$aaa
-0000b3c0 RTA_toHost$pipe$bbb
-0000ad54 RTA_toHost$pipe$dtab
-0000b364 RTA_toHost$pipe$rd
-0000b394 RTA_toHost$pipe$wr
-0000b44c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000b460 STS_A_TABBEG
-0000b490 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000b490 SWI_A_TABBEG
-0000b4bc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000ac64 SWI_D_curfxn
-0000ac54 SWI_D_curmask
-0000ac60 SWI_D_curmbox
-0000ac58 SWI_D_curset
-0000ac50 SWI_D_execaddr
-0000ac6c SWI_D_inswi
-0000ac5c SWI_D_lock
-0000ac68 SWI_D_rdybeg
-0000ac70 SWI_D_rdytab
-0000ac4c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000b51c SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000b53c TRC_R_mask
-0000b538 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000b3d0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000a280 TSK_idle$stack
-0000a618 TSK_idle$stkptr
-0000b474 TSK_idle$sts
-0000b323 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000b313 TSK_idle$sts$maxfmt
-0000b470 TSK_idle$sts$stsobj
-0000b31b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00009e60 _BIOS_init
-0000a06c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000ad94 _CLK_DFLTMICROSECS
-0000abc8 _CLK_D_countspms
-0000abbc _CLK_D_dirty
-0000ad98 _CLK_D_microseconds
-0000abc0 _CLK_D_prd
-0000abc4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000abac _CLK_htimeDiv
-0000abb0 _CLK_htimeMult
-0000adac _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000abb4 _CLK_ltimeDiv
-0000abb8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008628 _Config
-0000ada4 _DSK6713_AIC23_codeccontrolhandle
-0000ada8 _DSK6713_AIC23_codecdatahandle
-000055cc _DSK6713_AIC23_config
-00004840 _DSK6713_AIC23_openCodec
-000055a8 _DSK6713_AIC23_rget
-000054e0 _DSK6713_AIC23_rset
-00004540 _DSK6713_getVersion
-00004590 _DSK6713_init
-000044ac _DSK6713_rget
-00004498 _DSK6713_rset
-0000adbc _DSK6713_version
-000043c0 _DSK6713_wait
-00004464 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000ac24 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000ac28 _GBL_freq
-00004320 _GBL_getVersion
-0000ac20 _GBL_procId
-00005388 _GBL_setPLLto225MHz
-0000b424 _HST_A_TABBEG
-0000b460 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000ad3c _HWI_D_inhwi
-0000ad30 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000aa78 _HWI_STKBOTTOM
-0000a680 _HWI_STKTOP
-0000ad30 _HWI_data
-00004020 _HWI_disable
-0000aa80 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000adb8 _H_Codec
-0000b484 _IDL_busyObj
-0000b4fc _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00005e00 _IRQ_enable
-00005e80 _IRQ_globalDisable
-00005ea0 _IRQ_globalEnable
-00005000 _IRQ_map
-00005ec0 _IRQ_nmiEnable
-00004ca8 _ISR_AIC
-0000acf0 _KNL_alarm
-00003440 _KNL_check
-0000ad14 _KNL_curqueue
-0000ad04 _KNL_curtask
-0000ad0c _KNL_curtime
-0000896c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000ad2c _KNL_idlefxn
-0000acf8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000ad18 _KNL_maxqueue
-00003aa0 _KNL_post
-0000ad08 _KNL_prevtask
-0000acfc _KNL_priority
-000088cc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000ad00 _KNL_set
-0000acf4 _KNL_setpri
-0000b490 _KNL_swi
-0000ad10 _KNL_swiptr
-00002cec _KNL_switch
-0000ad20 _KNL_tcreatefxn
-0000ad24 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000ad28 _KNL_treadyfxn
-0000ad1c _KNL_tswitchfxn
-0000ace8 _KNL_wFlag
-0000acec _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000b500 _LNK_dataPump
-0000ad64 _LNK_dspFrameReadyMask
-0000ad60 _LNK_dspFrameRequestMask
-0000ad6c _LNK_readDone
-0000ad70 _LNK_readFail
-0000ad68 _LNK_readPend
-0000ad74 _LNK_writeFail
-0000b4e4 _LOG_A_TABBEG
-0000b4fc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000ab8c _LOG_D_system
-00003ea0 _LOG_event
-0000b4e4 _LOG_system
-000058c0 _MCBSP_open
-000051c0 _MCBSP_reset
-000059c0 _MCBSP_start
-0000ac2c _MEM_D_NUMSEGMENTS
-0000ac34 _MEM_D_freelist
-0000ac38 _MEM_D_lockaddr
-0000ac30 _MEM_D_memtab
-0000ac3c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000a260 _OBJ_init
-00008a38 _OBJ_segtab
-00008a00 _OBJ_table
-0000b2fc _PIP_A_TABBEG
-0000b3c4 _PIP_A_TABEND
-0000abcc _PRD_D_tick
-00008b58 _PRD_clock
-0000b504 _RTA_dispatcher
-0000b428 _RTA_fromHost
-0000b444 _RTA_toHost
-00009a00 _RTDX_Buffer
-00009e0c _RTDX_Buffer_End
-00009840 _RTDX_Buffer_Initialize
-00009980 _RTDX_Buffer_Read
-000098a0 _RTDX_Buffer_ReadCB
-00009900 _RTDX_Buffer_Size
-00009e08 _RTDX_Buffer_Start
-000099a0 _RTDX_Buffer_Write
-00008f60 _RTDX_Buffer_WriteCB
-00009940 _RTDX_Final_RT_Monitor
-000097c0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-000099e0 _RTDX_Mask_IER
-000095a0 _RTDX_Mon_Queue
-00008b60 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-00009e1c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000b460 _STS_A_TABBEG
-0000b490 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000ac64 _SWI_D_curfxn
-0000ac54 _SWI_D_curmask
-0000ac58 _SWI_D_curset
-0000ac50 _SWI_D_execaddr
-0000ac6c _SWI_D_inswi
-0000ac5c _SWI_D_lock
-0000ac68 _SWI_D_rdybeg
-0000ac4c _SWI_D_runaddr
-0000ac4c _SWI_data
-00000e50 _SWI_post
-0000ac40 _SYS
-0000adc0 _SYS_PUTCBEG
-0000afbf _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00008b04 _SYS_exitStack
-0000ad9c _SYS_exitStackPtr
-0000ada0 _SYS_exitStackTop
-0000b53c _TRC_R_mask
-0000ad90 _TSK
-000089a4 _TSK_ATTRS
-000089c0 _TSK_config
-00002fa0 _TSK_exit
-0000b3d0 _TSK_idle
-0000a1e0 _TSK_init
-0000ad88 _TSK_nTasks
-0000ad8c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000089e0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000ac48 __HOOK_NUMHOOKS
-0000ac44 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000088c4 __IRQ_dispatchTable
-00008800 __IRQ_eventTable
-00005f40 __IRQ_hookFetchPacket
-00008884 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00008ad4 __MCBSP_hDev0
-00008ad8 __MCBSP_hDev1
-00008a7c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00008a54 __TSK_mutex
-00008b48 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00005e40 ___add_dtor
-00008650 ___atexit_func_id__
-ffffffff ___binit__
-0000aa80 ___bss__
-ffffffff ___c_args__
-00005f60 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000adbe ___end__
-00005f60 ___etext__
-0000b52c ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00008b40 __cleanup_ptr
-00008b44 __dtors_ptr
-00008b4c __lock
-00005ee0 __nop
-00005f00 __register_lock
-00005f20 __register_unlock
-0000a680 __stack
-00005660 __strasgi
-00008b50 __unlock
-00005ac0 _atexit
-00007698 _b
-0000a120 _c_int00
-000057a0 _call_dtors
-00008b54 _dtors
-00004c10 _init_HWI
-00004b4c _init_hardware
-00004b20 _main
-00004dc0 _memcpy
-00005c3c _mono_read_16Bit
-00005c14 _mono_write_16Bit
-00004ce4 _non_circ_fir
-0000ad80 _rtdxNullChanCnt
-0000ad84 _rtdxNullFuncCnt
-00009e10 _rtdx_buffer_state
-00009e30 _rtdx_mon_state
-00005be8 _stereo_read_16Bit
-00005bc0 _stereo_write_16Bit
-00005360 _wait500nS
-00007e60 _x
-ffffffff binit
-00005f60 cinit
-00000000 edata
-0000adbe end
-00005f60 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000b52c pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 _DSK6713_wait
-000043c0 ___text__
-00004464 _DSK6713_waitusec
-00004498 _DSK6713_rset
-000044ac _DSK6713_rget
-00004540 _DSK6713_getVersion
-00004590 _DSK6713_init
-00004840 _DSK6713_AIC23_openCodec
-00004b20 _main
-00004b4c _init_hardware
-00004c10 _init_HWI
-00004ca8 _ISR_AIC
-00004ce4 _non_circ_fir
-00004dc0 _memcpy
-00004e20 GBL_CLKIN
-00005000 _IRQ_map
-000051c0 _MCBSP_reset
-00005205 GBL_A_VERSION
-00005360 _wait500nS
-00005388 GBL_USERINITFXN
-00005388 _GBL_setPLLto225MHz
-000054e0 _DSK6713_AIC23_rset
-000055a8 _DSK6713_AIC23_rget
-000055cc _DSK6713_AIC23_config
-00005660 __strasgi
-000057a0 _call_dtors
-000058c0 _MCBSP_open
-000059c0 _MCBSP_start
-00005ac0 _atexit
-00005bc0 _stereo_write_16Bit
-00005be8 _stereo_read_16Bit
-00005c14 _mono_write_16Bit
-00005c3c _mono_read_16Bit
-00005e00 _IRQ_enable
-00005e40 ___add_dtor
-00005e80 _IRQ_globalDisable
-00005ea0 _IRQ_globalEnable
-00005ec0 _IRQ_nmiEnable
-00005ee0 __nop
-00005f00 __register_lock
-00005f20 __register_unlock
-00005f40 __IRQ_hookFetchPacket
-00005f60 ___cinit__
-00005f60 ___etext__
-00005f60 cinit
-00005f60 etext
-00007698 _b
-00007e60 _x
-00008628 _Config
-00008650 ___atexit_func_id__
-00008800 __IRQ_eventTable
-00008884 __IRQ_intTable
-000088c4 __IRQ_dispatchTable
-000088cc _KNL_queues
-0000896c _KNL_dummy
-000089a4 _TSK_ATTRS
-000089c0 _TSK_config
-000089e0 _TSK_timerSem
-00008a00 _OBJ_table
-00008a38 _OBJ_segtab
-00008a54 __TSK_mutex
-00008a7c __MEM_mutex
-00008ad4 __MCBSP_hDev0
-00008ad8 __MCBSP_hDev1
-00008b04 _SYS_exitStack
-00008b40 __cleanup_ptr
-00008b44 __dtors_ptr
-00008b48 ___TI_enable_exit_profile_output
-00008b4c __lock
-00008b50 __unlock
-00008b54 _dtors
-00008b58 CLK_A_TABBEG
-00008b58 PRD_clock
-00008b58 _PRD_clock
-00008b5c CLK_null
-00008b60 _RTDX_Poll
-00008f60 _RTDX_Buffer_WriteCB
-000095a0 _RTDX_Mon_Queue
-000097c0 _RTDX_Init_RT_Monitor
-00009840 _RTDX_Buffer_Initialize
-000098a0 _RTDX_Buffer_ReadCB
-00009900 _RTDX_Buffer_Size
-00009940 _RTDX_Final_RT_Monitor
-00009980 _RTDX_Buffer_Read
-000099a0 _RTDX_Buffer_Write
-000099e0 _RTDX_Mask_IER
-00009a00 _RTDX_Buffer
-00009e08 _RTDX_Buffer_Start
-00009e0c _RTDX_Buffer_End
-00009e10 _rtdx_buffer_state
-00009e1c _RTDX_writing
-00009e30 _rtdx_mon_state
-00009e4c RTA_fromHost$buf
-00009e60 BIOS_init
-00009e60 _BIOS_init
-00009fc4 BIOS$$CLKON
-0000a004 BIOS$$CLKOFF
-0000a06c BIOS_start
-0000a06c _BIOS_start
-0000a120 _c_int00
-0000a1e0 _TSK_init
-0000a260 _OBJ_init
-0000a280 TSK_idle$stack
-0000a618 TSK_idle$stkptr
-0000a680 GBL_stackbeg
-0000a680 _HWI_STKTOP
-0000a680 __stack
-0000aa78 _HWI_STKBOTTOM
-0000aa7f GBL_stackend
-0000aa80 $bss
-0000aa80 .bss
-0000aa80 _HWI_dispatchTab
-0000aa80 ___bss__
-0000ab80 IDL_D_tabbeg
-0000ab84 IDL_D_calibrate
-0000ab88 IDL_D_calbeg
-0000ab8c LOG_D_system
-0000ab8c _LOG_D_system
-0000ab90 PIP_D_tabbeg
-0000ab94 PIP_D_tablen
-0000ab98 CLK_R_time
-0000ab9c CLK_D_timefxn
-0000aba0 CLK_D_tabbeg
-0000aba4 CLK_D_isrhook
-0000aba8 CLK_D_idletime
-0000abac _CLK_htimeDiv
-0000abb0 _CLK_htimeMult
-0000abb4 _CLK_ltimeDiv
-0000abb8 _CLK_ltimeMult
-0000abbc _CLK_D_dirty
-0000abc0 _CLK_D_prd
-0000abc4 _CLK_D_tddr
-0000abc8 _CLK_D_countspms
-0000abcc PRD_D_tick
-0000abcc _PRD_D_tick
-0000abd0 PRD_D_cur
-0000abd4 PRD_D_elapsed
-0000abd8 PRD_D_prevtim
-0000abdc PRD_D_scalar
-0000abe0 PRD_D_swihandle
-0000abe4 PRD_D_tabbeg
-0000abe8 PRD_D_tablen
-0000abec PRD_D_thook
-0000abf0 RTA_D_fromHost
-0000abf4 RTA_D_toHost
-0000abf8 RTA_D_logval
-0000ac08 RTA_D_stsval
-0000ac14 HST_D_chanmask
-0000ac18 HST_D_tabbeg
-0000ac1c HST_D_tabend
-0000ac20 _GBL_procId
-0000ac24 _GBL_clkIn
-0000ac28 _GBL_freq
-0000ac2c _MEM_D_NUMSEGMENTS
-0000ac30 _MEM_D_memtab
-0000ac34 _MEM_D_freelist
-0000ac38 _MEM_D_lockaddr
-0000ac3c _MEM_D_unlockaddr
-0000ac40 _SYS
-0000ac44 __HOOK_knlId
-0000ac48 __HOOK_NUMHOOKS
-0000ac4c SWI_D_runaddr
-0000ac4c _SWI_D_runaddr
-0000ac4c _SWI_data
-0000ac50 SWI_D_execaddr
-0000ac50 _SWI_D_execaddr
-0000ac54 SWI_D_curmask
-0000ac54 _SWI_D_curmask
-0000ac58 SWI_D_curset
-0000ac58 _SWI_D_curset
-0000ac5c SWI_D_lock
-0000ac5c _SWI_D_lock
-0000ac60 SWI_D_curmbox
-0000ac64 SWI_D_curfxn
-0000ac64 _SWI_D_curfxn
-0000ac68 SWI_D_rdybeg
-0000ac68 _SWI_D_rdybeg
-0000ac6c SWI_D_inswi
-0000ac6c _SWI_D_inswi
-0000ac70 SWI_D_rdytab
-0000ace8 _KNL_wFlag
-0000acec _KNL_wList
-0000acf0 _KNL_alarm
-0000acf4 _KNL_setpri
-0000acf8 _KNL_inactive
-0000acfc _KNL_priority
-0000ad00 _KNL_set
-0000ad04 _KNL_curtask
-0000ad08 _KNL_prevtask
-0000ad0c _KNL_curtime
-0000ad10 _KNL_swiptr
-0000ad14 _KNL_curqueue
-0000ad18 _KNL_maxqueue
-0000ad1c _KNL_tswitchfxn
-0000ad20 _KNL_tcreatefxn
-0000ad24 _KNL_tdeletefxn
-0000ad28 _KNL_treadyfxn
-0000ad2c _KNL_idlefxn
-0000ad30 HWI_D_spsave
-0000ad30 _HWI_D_spsave
-0000ad30 _HWI_data
-0000ad3c _HWI_D_inhwi
-0000ad40 HWI_D_bss
-0000ad44 HWI_D_ccmask
-0000ad48 RTA_fromHost$pipe$dtab
-0000ad54 RTA_toHost$pipe$dtab
-0000ad60 LNK_dspFrameRequestMask
-0000ad60 _LNK_dspFrameRequestMask
-0000ad64 LNK_dspFrameReadyMask
-0000ad64 _LNK_dspFrameReadyMask
-0000ad68 LNK_readPend
-0000ad68 _LNK_readPend
-0000ad6c LNK_readDone
-0000ad6c _LNK_readDone
-0000ad70 LNK_readFail
-0000ad70 _LNK_readFail
-0000ad74 LNK_writeFail
-0000ad74 _LNK_writeFail
-0000ad80 _rtdxNullChanCnt
-0000ad84 _rtdxNullFuncCnt
-0000ad88 _TSK_nTasks
-0000ad8c _TSK_pid
-0000ad90 _TSK
-0000ad94 _CLK_DFLTMICROSECS
-0000ad98 _CLK_D_microseconds
-0000ad9c _SYS_exitStackPtr
-0000ada0 _SYS_exitStackTop
-0000ada4 _DSK6713_AIC23_codeccontrolhandle
-0000ada8 _DSK6713_AIC23_codecdatahandle
-0000adac _CLK_htimePerLtime
-0000adb4 IDL_D_busyObj
-0000adb8 _H_Codec
-0000adbc _DSK6713_version
-0000adbe ___end__
-0000adbe end
-0000adc0 _SYS_PUTCBEG
-0000afbf _SYS_PUTCEND
-0000b000 LOG_system$buf
-0000b100 RTA_toHost$buf
-0000b2f9 KNL_swi$sts$maxfmt
-0000b2fc PIP_A_TABBEG
-0000b2fc RTA_fromHost$pipe
-0000b2fc _PIP_A_TABBEG
-0000b300 RTA_fromHost$pipe$rd
-0000b301 KNL_swi$sts$sumfmt
-0000b309 KNL_swi$sts$avgfmt
-0000b313 TSK_idle$sts$maxfmt
-0000b31b TSK_idle$sts$sumfmt
-0000b323 TSK_idle$sts$avgfmt
-0000b32c RTA_fromHost$pipe$aaa
-0000b32d IDL_busyObj$maxfmt
-0000b330 IDL_busyObj$sumfmt
-0000b330 RTA_fromHost$pipe$wr
-0000b333 IDL_busyObj$avgfmt
-0000b35c RTA_fromHost$pipe$bbb
-0000b360 RTA_toHost$pipe
-0000b364 RTA_toHost$pipe$rd
-0000b390 RTA_toHost$pipe$aaa
-0000b394 RTA_toHost$pipe$wr
-0000b3c0 RTA_toHost$pipe$bbb
-0000b3c4 PIP_A_TABEND
-0000b3c4 _PIP_A_TABEND
-0000b3d0 TSK_idle
-0000b3d0 _TSK_idle
-0000b424 HST_A_TABBEG
-0000b424 _HST_A_TABBEG
-0000b428 RTA_fromHost
-0000b428 _RTA_fromHost
-0000b430 RTA_fromHost$rtdx
-0000b444 RTA_toHost
-0000b444 _RTA_toHost
-0000b44c RTA_toHost$rtdx
-0000b460 HST_A_TABEND
-0000b460 KNL_swi$sts$stsobj
-0000b460 STS_A_TABBEG
-0000b460 _HST_A_TABEND
-0000b460 _STS_A_TABBEG
-0000b464 KNL_swi$sts
-0000b470 TSK_idle$sts$stsobj
-0000b474 TSK_idle$sts
-0000b480 IDL_busyObj$stsobj
-0000b484 IDL_busyObj
-0000b484 _IDL_busyObj
-0000b490 KNL_swi
-0000b490 STS_A_TABEND
-0000b490 SWI_A_TABBEG
-0000b490 _KNL_swi
-0000b490 _STS_A_TABEND
-0000b4bc SWI_A_TABEND
-0000b4e4 LOG_A_TABBEG
-0000b4e4 LOG_system
-0000b4e4 _LOG_A_TABBEG
-0000b4e4 _LOG_system
-0000b4fc IDL_A_TABBEG
-0000b4fc IDL_cpuLoad
-0000b4fc LOG_A_TABEND
-0000b4fc _IDL_cpuLoad
-0000b4fc _LOG_A_TABEND
-0000b500 LNK_dataPump
-0000b500 _LNK_dataPump
-0000b504 RTA_dispatcher
-0000b504 _RTA_dispatcher
-0000b508 IDL_END
-0000b50c IDL_A_CALBEG
-0000b50c IDL_cpuLoad$
-0000b510 LNK_dataPump$
-0000b514 RTA_dispatcher$
-0000b518 IDL_END$
-0000b51c SYS$config
-0000b52c ___pinit__
-0000b52c pinit
-0000b538 TRC_cinit
-0000b53c TRC_R_mask
-0000b53c _TRC_R_mask
-0000b540 GBL_initdone
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[715 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/90cc8e0d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/90cc8e0d7606001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/90cc8e0d7606001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/e071b03a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/e071b03a45070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4/e071b03a45070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/10bb61203f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/10bb61203f070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/10bb61203f070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/50f9b0277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/50f9b0277506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/40/50f9b0277506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/41/3032acf07406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/41/3032acf07406001814daa3a49c232c18
deleted file mode 100644
index df83e41..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/41/3032acf07406001814daa3a49c232c18
+++ /dev/null
@@ -1,157 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-short ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/002ef37c040500181ac69c959115c706 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/002ef37c040500181ac69c959115c706
deleted file mode 100644
index 6e19045..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/002ef37c040500181ac69c959115c706
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff_2.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/909a15f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/909a15f344070018153483e962c7925e
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/909a15f344070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/b004ae467506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/b004ae467506001814daa3a49c232c18
deleted file mode 100644
index 2995ec9..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/42/b004ae467506001814daa3a49c232c18
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
- ptr--;
- if (ptr == 0)
- ptr = N-1;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50b47d277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50b47d277506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50b47d277506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50c7e755e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50c7e755e20100181ce89bcacea45786
deleted file mode 100644
index 849756e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/50c7e755e20100181ce89bcacea45786
+++ /dev/null
@@ -1,1753 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 15:10:09 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a940
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd53 000342ad RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000023a0
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000360 intio.obj (.text)
- 000051c0 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 000054a0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056e0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000058a0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a40 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005bc0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d40 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e80 00000120 : sinit.obj (.text:_call_dtors)
- 00005fa0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000060a0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000061a0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 000062a0 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006380 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006460 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006520 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 000065c0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006600 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006640 00000040 : divf.obj (.text:___isnanf)
- 00006680 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000066a0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000066c0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066e0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006700 00000020 : _lock.obj (.text:__register_lock)
- 00006720 00000020 : _lock.obj (.text:__register_unlock)
- 00006740 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006760 00001744
- 00006760 00000800 intio.obj (.cinit)
- 00006f60 00000564 dsp_bios_cfg.obj (.cinit)
- 000074c4 00000004 --HOLE-- [fill = 0]
- 000074c8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007734 00000004 --HOLE-- [fill = 0]
- 00007738 000001a4 : knl.o67 (.cinit)
- 000078dc 00000004 --HOLE-- [fill = 0]
- 000078e0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 00007a0c 00000004 --HOLE-- [fill = 0]
- 00007a10 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007ac0 00000070 : tsk.o67 (.cinit)
- 00007b30 00000060 : tsk_stup.o67 (.cinit)
- 00007b90 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bec 00000004 --HOLE-- [fill = 0]
- 00007bf0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c44 00000004 --HOLE-- [fill = 0]
- 00007c48 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c94 00000004 --HOLE-- [fill = 0]
- 00007c98 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007ce4 00000004 --HOLE-- [fill = 0]
- 00007ce8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007d1c 00000004 --HOLE-- [fill = 0]
- 00007d20 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d50 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d7c 00000004 --HOLE-- [fill = 0]
- 00007d80 0000002c rts6700.lib : exit.obj (.cinit)
- 00007dac 00000004 --HOLE-- [fill = 0]
- 00007db0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007dd4 00000004 --HOLE-- [fill = 0]
- 00007dd8 0000001c : sys.o67 (.cinit)
- 00007df4 00000004 --HOLE-- [fill = 0]
- 00007df8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007e14 00000004 --HOLE-- [fill = 0]
- 00007e18 0000001c : atexit.obj (.cinit)
- 00007e34 00000004 --HOLE-- [fill = 0]
- 00007e38 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e50 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e60 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 0000000c : idl_busy.o67 (.cinit)
- 00007e7c 00000004 --HOLE-- [fill = 0]
- 00007e80 0000000c : knl_swit.o67 (.cinit)
- 00007e8c 00000004 --HOLE-- [fill = 0]
- 00007e90 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e9c 00000004 --HOLE-- [fill = 0]
- 00007ea0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007ea4 00000004
- 00007ea4 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007ea8 000014c8 UNINITIALIZED
- 00007ea8 00000fb8 intio.obj (.far)
- 00008e60 00000188 rts6700.lib : atexit.obj (.far)
- 00008fe8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090dc 000000d8 bios.a67 : knl.o67 (.far)
- 000091b4 0000005c : tsk.o67 (.far)
- 00009210 00000054 : obj_init.o67 (.far)
- 00009264 00000050 : tsk_stup.o67 (.far)
- 000092b4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092ec 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009314 00000020 bios.a67 : sys.o67 (.far)
- 00009334 00000010 : knl_tick.o67 (.far)
- 00009344 0000000c : utl_putc.o67 (.far)
- 00009350 0000000c rts6700.lib : exit.obj (.far)
- 0000935c 00000008 : _lock.obj (.far)
- 00009364 00000008 : divf.obj (.far)
- 0000936c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009370 00000010 UNINITIALIZED
- 00009370 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009380 00000ea0
- 00009380 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009780 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009ac0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009dc0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009f00 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fe0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a060 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a0c0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a120 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a160 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a1a0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a1c0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1e0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a200 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a220 0000044c UNINITIALIZED
- 0000a220 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a630 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a650 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a66c 00000010 UNINITIALIZED
- 0000a66c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a680 00000420
- 0000a680 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a940 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000aa00 00000080 : tsk_init.o67 (.sysinit)
- 0000aa80 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aaa0 00000400 UNINITIALIZED
- 0000aaa0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000aea0 00000400 UNINITIALIZED
- 0000aea0 00000400 --HOLE--
-
-.bss 0 0000b2a0 0000033e UNINITIALIZED
- 0000b2a0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b3a0 000000cc : biosdata.o67 (.bss)
- 0000b46c 0000009c : swi.o67 (.bss)
- 0000b508 00000048 : knl.o67 (.bss)
- 0000b550 00000018 : hwi.o67 (.bss)
- 0000b568 00000018 dsp_bios_cfg.obj (.bss)
- 0000b580 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b598 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b5a8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b5b4 00000008 : clk_data.o67 (.bss)
- 0000b5bc 00000008 : sys.o67 (.bss)
- 0000b5c4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b5cc 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b5d0 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b5d4 00000004 : idl_busy.o67 (.bss)
- 0000b5d8 00000004 intio.obj (.bss)
- 0000b5dc 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5e0 00000200
- 0000b5e0 00000200 --HOLE-- [fill = 00000000]
-
-.log 0 0000b7e0 00000018
- 0000b7e0 00000018 dsp_bios_cfg.obj (.log)
-
-.clk 0 0000b7f8 00000008 UNINITIALIZED
- 0000b7f8 00000008 dsp_bios_cfg.obj (.clk)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bc24 00000040
- 0000bc24 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000bc64 0000003c UNINITIALIZED
- 0000bc64 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bca0 00000030
- 0000bca0 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bcd0 0000002c UNINITIALIZED
- 0000bcd0 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcfc 00000028
- 0000bcfc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idlcal 0 0000bd24 00000010 UNINITIALIZED
- 0000bd24 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd34 00000010 UNINITIALIZED
- 0000bd34 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd44 0000000c
- 0000bd44 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd48 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd4c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd50 0000000c
- 0000bd50 0000000c bios.a67 : trc.o67 (.trcdata)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b2a0 $bss
-0000b2a0 .bss
-00000000 .data
-000043c0 .text
-0000a824 BIOS$$CLKOFF
-0000a7e4 BIOS$$CLKON
-0000a680 BIOS_init
-0000a88c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000b7f8 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b3c8 CLK_D_idletime
-0000b3c4 CLK_D_isrhook
-0000b3c0 CLK_D_tabbeg
-0000b3bc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b3b8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000b7fc CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a68 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd58 GBL_initdone
-0000aea0 GBL_stackbeg
-0000b29f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc64 HST_A_TABBEG
-0000bca0 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b434 HST_D_chanmask
-0000b438 HST_D_tabbeg
-0000b43c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b560 HWI_D_bss
-0000b564 HWI_D_ccmask
-0000b550 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd24 IDL_A_CALBEG
-0000a66c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b5d4 IDL_D_busyObj
-0000b3a8 IDL_D_calbeg
-0000b3a4 IDL_D_calibrate
-0000b3a0 IDL_D_tabbeg
-0000a678 IDL_END
-0000bd30 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bcc4 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bcc0 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a66c IDL_cpuLoad
-0000bd24 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bcd0 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bca4 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bca0 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a670 LNK_dataPump
-0000bd28 LNK_dataPump$
-0000b584 LNK_dspFrameReadyMask
-0000b580 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b58c LNK_readDone
-0000b590 LNK_readFail
-0000b588 LNK_readPend
-00000370 LNK_rrloop
-0000b594 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b7e0 LOG_A_TABBEG
-0000b7f8 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b3ac LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b7e0 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b3b0 PIP_D_tabbeg
-0000b3b4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3f0 PRD_D_cur
-0000b3f4 PRD_D_elapsed
-0000b3f8 PRD_D_prevtim
-0000b3fc PRD_D_scalar
-0000b400 PRD_D_swihandle
-0000b404 PRD_D_tabbeg
-0000b408 PRD_D_tablen
-0000b40c PRD_D_thook
-0000b3ec PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000b7f8 PRD_clock
-00000001 QUE$
-0000b410 RTA_D_fromHost
-0000b418 RTA_D_logval
-0000b428 RTA_D_stsval
-0000b414 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a674 RTA_dispatcher
-0000bd2c RTA_dispatcher$
-00001f28 RTA_execute
-0000bc68 RTA_fromHost
-00009370 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b568 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b574 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc8c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bca0 STS_A_TABBEG
-0000bcd0 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bcd0 SWI_A_TABBEG
-0000bcfc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b484 SWI_D_curfxn
-0000b474 SWI_D_curmask
-0000b480 SWI_D_curmbox
-0000b478 SWI_D_curset
-0000b470 SWI_D_execaddr
-0000b48c SWI_D_inswi
-0000b47c SWI_D_lock
-0000b488 SWI_D_rdybeg
-0000b490 SWI_D_rdytab
-0000b46c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd34 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd54 TRC_R_mask
-0000bd50 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aaa0 TSK_idle$stack
-0000ae38 TSK_idle$stkptr
-0000bcb4 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bcb0 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a680 _BIOS_init
-0000a88c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b5b4 _CLK_DFLTMICROSECS
-0000b3e8 _CLK_D_countspms
-0000b3dc _CLK_D_dirty
-0000b5b8 _CLK_D_microseconds
-0000b3e0 _CLK_D_prd
-0000b3e4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b3cc _CLK_htimeDiv
-0000b3d0 _CLK_htimeMult
-0000b5cc _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b3d4 _CLK_ltimeDiv
-0000b3d8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e38 _Config
-0000b5c4 _DSK6713_AIC23_codeccontrolhandle
-0000b5c8 _DSK6713_AIC23_codecdatahandle
-00005cac _DSK6713_AIC23_config
-000051c0 _DSK6713_AIC23_openCodec
-00005c88 _DSK6713_AIC23_rget
-00005bc0 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5dc _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b444 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b448 _GBL_freq
-00004320 _GBL_getVersion
-0000b440 _GBL_procId
-00005a68 _GBL_setPLLto225MHz
-0000bc64 _HST_A_TABBEG
-0000bca0 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b55c _HWI_D_inhwi
-0000b550 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b298 _HWI_STKBOTTOM
-0000aea0 _HWI_STKTOP
-0000b550 _HWI_data
-00004020 _HWI_disable
-0000b2a0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5d8 _H_Codec
-0000bcc4 _IDL_busyObj
-0000a66c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-000065c0 _IRQ_enable
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000056e0 _IRQ_map
-000066c0 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b510 _KNL_alarm
-00003440 _KNL_check
-0000b534 _KNL_curqueue
-0000b524 _KNL_curtask
-0000b52c _KNL_curtime
-0000917c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b54c _KNL_idlefxn
-0000b518 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b538 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b528 _KNL_prevtask
-0000b51c _KNL_priority
-000090dc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b520 _KNL_set
-0000b514 _KNL_setpri
-0000bcd0 _KNL_swi
-0000b530 _KNL_swiptr
-00002cec _KNL_switch
-0000b540 _KNL_tcreatefxn
-0000b544 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b548 _KNL_treadyfxn
-0000b53c _KNL_tswitchfxn
-0000b508 _KNL_wFlag
-0000b50c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a670 _LNK_dataPump
-0000b584 _LNK_dspFrameReadyMask
-0000b580 _LNK_dspFrameRequestMask
-0000b58c _LNK_readDone
-0000b590 _LNK_readFail
-0000b588 _LNK_readPend
-0000b594 _LNK_writeFail
-0000b7e0 _LOG_A_TABBEG
-0000b7f8 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b3ac _LOG_D_system
-00003ea0 _LOG_event
-0000b7e0 _LOG_system
-00005fa0 _MCBSP_open
-000058a0 _MCBSP_reset
-000060a0 _MCBSP_start
-0000b44c _MEM_D_NUMSEGMENTS
-0000b454 _MEM_D_freelist
-0000b458 _MEM_D_lockaddr
-0000b450 _MEM_D_memtab
-0000b45c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa80 _OBJ_init
-00009248 _OBJ_segtab
-00009210 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3ec _PRD_D_tick
-0000b7f8 _PRD_clock
-0000a674 _RTA_dispatcher
-0000bc68 _RTA_fromHost
-0000bc84 _RTA_toHost
-0000a220 _RTDX_Buffer
-0000a62c _RTDX_Buffer_End
-0000a060 _RTDX_Buffer_Initialize
-0000a1a0 _RTDX_Buffer_Read
-0000a0c0 _RTDX_Buffer_ReadCB
-0000a120 _RTDX_Buffer_Size
-0000a628 _RTDX_Buffer_Start
-0000a1c0 _RTDX_Buffer_Write
-00009780 _RTDX_Buffer_WriteCB
-0000a160 _RTDX_Final_RT_Monitor
-00009fe0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a200 _RTDX_Mask_IER
-00009dc0 _RTDX_Mon_Queue
-00009380 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a63c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bca0 _STS_A_TABBEG
-0000bcd0 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b484 _SWI_D_curfxn
-0000b474 _SWI_D_curmask
-0000b478 _SWI_D_curset
-0000b470 _SWI_D_execaddr
-0000b48c _SWI_D_inswi
-0000b47c _SWI_D_lock
-0000b488 _SWI_D_rdybeg
-0000b46c _SWI_D_runaddr
-0000b46c _SWI_data
-00000e50 _SWI_post
-0000b460 _SYS
-0000b5e0 _SYS_PUTCBEG
-0000b7df _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009314 _SYS_exitStack
-0000b5bc _SYS_exitStackPtr
-0000b5c0 _SYS_exitStackTop
-0000bd54 _TRC_R_mask
-0000b5b0 _TSK
-000091b4 _TSK_ATTRS
-000091d0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000aa00 _TSK_init
-0000b5a8 _TSK_nTasks
-0000b5ac _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091f0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b468 __HOOK_NUMHOOKS
-0000b464 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090d4 __IRQ_dispatchTable
-00009010 __IRQ_eventTable
-00006740 __IRQ_hookFetchPacket
-00009094 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092e4 __MCBSP_hDev0
-000092e8 __MCBSP_hDev1
-0000928c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009264 __TSK_mutex
-00009358 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006600 ___add_dtor
-00008e60 ___atexit_func_id__
-ffffffff ___binit__
-0000b2a0 ___bss__
-ffffffff ___c_args__
-00006760 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5de ___end__
-00006760 ___etext__
-0000bd44 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009350 __cleanup_ptr
-000043c0 __divf
-00009354 __dtors_ptr
-000062a0 __frcmpyf_div
-0000935c __lock
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-0000aea0 __stack
-00005d40 __strasgi
-00009360 __unlock
-000061a0 _atexit
-00007ea8 _b
-0000a940 _c_int00
-00005e80 _call_dtors
-0000936c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-000054a0 _memcpy
-000063fc _mono_read_16Bit
-000063d4 _mono_write_16Bit
-000050e0 _non_circ_fir
-0000b5a0 _rtdxNullChanCnt
-0000b5a4 _rtdxNullFuncCnt
-0000a630 _rtdx_buffer_state
-0000a650 _rtdx_mon_state
-000063a8 _stereo_read_16Bit
-00006380 _stereo_write_16Bit
-00005a40 _wait500nS
-00008670 _x
-ffffffff binit
-00006760 cinit
-00000000 edata
-0000b5de end
-00006760 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd44 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050e0 _non_circ_fir
-000051c0 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-000054a0 _memcpy
-000056e0 _IRQ_map
-000058a0 _MCBSP_reset
-00005a40 _wait500nS
-00005a68 GBL_USERINITFXN
-00005a68 _GBL_setPLLto225MHz
-00005bc0 _DSK6713_AIC23_rset
-00005c88 _DSK6713_AIC23_rget
-00005cac _DSK6713_AIC23_config
-00005d40 __strasgi
-00005e80 _call_dtors
-00005fa0 _MCBSP_open
-000060a0 _MCBSP_start
-000061a0 _atexit
-000062a0 __frcmpyf_div
-00006380 _stereo_write_16Bit
-000063a8 _stereo_read_16Bit
-000063d4 _mono_write_16Bit
-000063fc _mono_read_16Bit
-000065c0 _IRQ_enable
-00006600 ___add_dtor
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000066c0 _IRQ_nmiEnable
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-00006740 __IRQ_hookFetchPacket
-00006760 ___cinit__
-00006760 ___etext__
-00006760 cinit
-00006760 etext
-00007ea8 _b
-00008670 _x
-00008e38 _Config
-00008e60 ___atexit_func_id__
-00009010 __IRQ_eventTable
-00009094 __IRQ_intTable
-000090d4 __IRQ_dispatchTable
-000090dc _KNL_queues
-0000917c _KNL_dummy
-000091b4 _TSK_ATTRS
-000091d0 _TSK_config
-000091f0 _TSK_timerSem
-00009210 _OBJ_table
-00009248 _OBJ_segtab
-00009264 __TSK_mutex
-0000928c __MEM_mutex
-000092e4 __MCBSP_hDev0
-000092e8 __MCBSP_hDev1
-00009314 _SYS_exitStack
-00009350 __cleanup_ptr
-00009354 __dtors_ptr
-00009358 ___TI_enable_exit_profile_output
-0000935c __lock
-00009360 __unlock
-0000936c _dtors
-00009370 RTA_fromHost$buf
-00009380 _RTDX_Poll
-00009780 _RTDX_Buffer_WriteCB
-00009dc0 _RTDX_Mon_Queue
-00009fe0 _RTDX_Init_RT_Monitor
-0000a060 _RTDX_Buffer_Initialize
-0000a0c0 _RTDX_Buffer_ReadCB
-0000a120 _RTDX_Buffer_Size
-0000a160 _RTDX_Final_RT_Monitor
-0000a1a0 _RTDX_Buffer_Read
-0000a1c0 _RTDX_Buffer_Write
-0000a200 _RTDX_Mask_IER
-0000a220 _RTDX_Buffer
-0000a628 _RTDX_Buffer_Start
-0000a62c _RTDX_Buffer_End
-0000a630 _rtdx_buffer_state
-0000a63c _RTDX_writing
-0000a650 _rtdx_mon_state
-0000a66c IDL_A_TABBEG
-0000a66c IDL_cpuLoad
-0000a66c _IDL_cpuLoad
-0000a670 LNK_dataPump
-0000a670 _LNK_dataPump
-0000a674 RTA_dispatcher
-0000a674 _RTA_dispatcher
-0000a678 IDL_END
-0000a680 BIOS_init
-0000a680 _BIOS_init
-0000a7e4 BIOS$$CLKON
-0000a824 BIOS$$CLKOFF
-0000a88c BIOS_start
-0000a88c _BIOS_start
-0000a940 _c_int00
-0000aa00 _TSK_init
-0000aa80 _OBJ_init
-0000aaa0 TSK_idle$stack
-0000ae38 TSK_idle$stkptr
-0000aea0 GBL_stackbeg
-0000aea0 _HWI_STKTOP
-0000aea0 __stack
-0000b298 _HWI_STKBOTTOM
-0000b29f GBL_stackend
-0000b2a0 $bss
-0000b2a0 .bss
-0000b2a0 _HWI_dispatchTab
-0000b2a0 ___bss__
-0000b3a0 IDL_D_tabbeg
-0000b3a4 IDL_D_calibrate
-0000b3a8 IDL_D_calbeg
-0000b3ac LOG_D_system
-0000b3ac _LOG_D_system
-0000b3b0 PIP_D_tabbeg
-0000b3b4 PIP_D_tablen
-0000b3b8 CLK_R_time
-0000b3bc CLK_D_timefxn
-0000b3c0 CLK_D_tabbeg
-0000b3c4 CLK_D_isrhook
-0000b3c8 CLK_D_idletime
-0000b3cc _CLK_htimeDiv
-0000b3d0 _CLK_htimeMult
-0000b3d4 _CLK_ltimeDiv
-0000b3d8 _CLK_ltimeMult
-0000b3dc _CLK_D_dirty
-0000b3e0 _CLK_D_prd
-0000b3e4 _CLK_D_tddr
-0000b3e8 _CLK_D_countspms
-0000b3ec PRD_D_tick
-0000b3ec _PRD_D_tick
-0000b3f0 PRD_D_cur
-0000b3f4 PRD_D_elapsed
-0000b3f8 PRD_D_prevtim
-0000b3fc PRD_D_scalar
-0000b400 PRD_D_swihandle
-0000b404 PRD_D_tabbeg
-0000b408 PRD_D_tablen
-0000b40c PRD_D_thook
-0000b410 RTA_D_fromHost
-0000b414 RTA_D_toHost
-0000b418 RTA_D_logval
-0000b428 RTA_D_stsval
-0000b434 HST_D_chanmask
-0000b438 HST_D_tabbeg
-0000b43c HST_D_tabend
-0000b440 _GBL_procId
-0000b444 _GBL_clkIn
-0000b448 _GBL_freq
-0000b44c _MEM_D_NUMSEGMENTS
-0000b450 _MEM_D_memtab
-0000b454 _MEM_D_freelist
-0000b458 _MEM_D_lockaddr
-0000b45c _MEM_D_unlockaddr
-0000b460 _SYS
-0000b464 __HOOK_knlId
-0000b468 __HOOK_NUMHOOKS
-0000b46c SWI_D_runaddr
-0000b46c _SWI_D_runaddr
-0000b46c _SWI_data
-0000b470 SWI_D_execaddr
-0000b470 _SWI_D_execaddr
-0000b474 SWI_D_curmask
-0000b474 _SWI_D_curmask
-0000b478 SWI_D_curset
-0000b478 _SWI_D_curset
-0000b47c SWI_D_lock
-0000b47c _SWI_D_lock
-0000b480 SWI_D_curmbox
-0000b484 SWI_D_curfxn
-0000b484 _SWI_D_curfxn
-0000b488 SWI_D_rdybeg
-0000b488 _SWI_D_rdybeg
-0000b48c SWI_D_inswi
-0000b48c _SWI_D_inswi
-0000b490 SWI_D_rdytab
-0000b508 _KNL_wFlag
-0000b50c _KNL_wList
-0000b510 _KNL_alarm
-0000b514 _KNL_setpri
-0000b518 _KNL_inactive
-0000b51c _KNL_priority
-0000b520 _KNL_set
-0000b524 _KNL_curtask
-0000b528 _KNL_prevtask
-0000b52c _KNL_curtime
-0000b530 _KNL_swiptr
-0000b534 _KNL_curqueue
-0000b538 _KNL_maxqueue
-0000b53c _KNL_tswitchfxn
-0000b540 _KNL_tcreatefxn
-0000b544 _KNL_tdeletefxn
-0000b548 _KNL_treadyfxn
-0000b54c _KNL_idlefxn
-0000b550 HWI_D_spsave
-0000b550 _HWI_D_spsave
-0000b550 _HWI_data
-0000b55c _HWI_D_inhwi
-0000b560 HWI_D_bss
-0000b564 HWI_D_ccmask
-0000b568 RTA_fromHost$pipe$dtab
-0000b574 RTA_toHost$pipe$dtab
-0000b580 LNK_dspFrameRequestMask
-0000b580 _LNK_dspFrameRequestMask
-0000b584 LNK_dspFrameReadyMask
-0000b584 _LNK_dspFrameReadyMask
-0000b588 LNK_readPend
-0000b588 _LNK_readPend
-0000b58c LNK_readDone
-0000b58c _LNK_readDone
-0000b590 LNK_readFail
-0000b590 _LNK_readFail
-0000b594 LNK_writeFail
-0000b594 _LNK_writeFail
-0000b5a0 _rtdxNullChanCnt
-0000b5a4 _rtdxNullFuncCnt
-0000b5a8 _TSK_nTasks
-0000b5ac _TSK_pid
-0000b5b0 _TSK
-0000b5b4 _CLK_DFLTMICROSECS
-0000b5b8 _CLK_D_microseconds
-0000b5bc _SYS_exitStackPtr
-0000b5c0 _SYS_exitStackTop
-0000b5c4 _DSK6713_AIC23_codeccontrolhandle
-0000b5c8 _DSK6713_AIC23_codecdatahandle
-0000b5cc _CLK_htimePerLtime
-0000b5d4 IDL_D_busyObj
-0000b5d8 _H_Codec
-0000b5dc _DSK6713_version
-0000b5de ___end__
-0000b5de end
-0000b5e0 _SYS_PUTCBEG
-0000b7df _SYS_PUTCEND
-0000b7e0 LOG_A_TABBEG
-0000b7e0 LOG_system
-0000b7e0 _LOG_A_TABBEG
-0000b7e0 _LOG_system
-0000b7f8 CLK_A_TABBEG
-0000b7f8 LOG_A_TABEND
-0000b7f8 PRD_clock
-0000b7f8 _LOG_A_TABEND
-0000b7f8 _PRD_clock
-0000b7fc CLK_null
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc64 HST_A_TABBEG
-0000bc64 _HST_A_TABBEG
-0000bc68 RTA_fromHost
-0000bc68 _RTA_fromHost
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000bc84 _RTA_toHost
-0000bc8c RTA_toHost$rtdx
-0000bca0 HST_A_TABEND
-0000bca0 KNL_swi$sts$stsobj
-0000bca0 STS_A_TABBEG
-0000bca0 _HST_A_TABEND
-0000bca0 _STS_A_TABBEG
-0000bca4 KNL_swi$sts
-0000bcb0 TSK_idle$sts$stsobj
-0000bcb4 TSK_idle$sts
-0000bcc0 IDL_busyObj$stsobj
-0000bcc4 IDL_busyObj
-0000bcc4 _IDL_busyObj
-0000bcd0 KNL_swi
-0000bcd0 STS_A_TABEND
-0000bcd0 SWI_A_TABBEG
-0000bcd0 _KNL_swi
-0000bcd0 _STS_A_TABEND
-0000bcfc SWI_A_TABEND
-0000bd24 IDL_A_CALBEG
-0000bd24 IDL_cpuLoad$
-0000bd28 LNK_dataPump$
-0000bd2c RTA_dispatcher$
-0000bd30 IDL_END$
-0000bd34 SYS$config
-0000bd44 ___pinit__
-0000bd44 pinit
-0000bd50 TRC_cinit
-0000bd54 TRC_R_mask
-0000bd54 _TRC_R_mask
-0000bd58 GBL_initdone
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[717 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/a010d67a44070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/a010d67a44070018153483e962c7925e
deleted file mode 100644
index ca32f05..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/a010d67a44070018153483e962c7925e
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N]= {0};
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N;
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = ptr; i < N+ptr; i++) {
- y += buffer[i%N] * b[M-i-ptr-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/c080efe4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/c080efe4e50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/c080efe4e50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/d0e9c9257506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/d0e9c9257506001814daa3a49c232c18
deleted file mode 100644
index 151852d..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/43/d0e9c9257506001814daa3a49c232c18
+++ /dev/null
@@ -1,154 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/1019a987d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/1019a987d80100181ce89bcacea45786
deleted file mode 100644
index 13baffc..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/1019a987d80100181ce89bcacea45786
+++ /dev/null
@@ -1,134 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[n];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- // temporary variable used to output values from function
- float wave_out, wave;
-
- wave = sinegen();
- wave_out = wave < 0 ? wave : -wave;
-
- mono_write_16Bit((short)(wave_out*32767));
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/3034b9cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/3034b9cc7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/3034b9cc7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/90fb11afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/90fb11afe50100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/90fb11afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/b077eae4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/b077eae4e50100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/44/b077eae4e50100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/45/e04d10afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/45/e04d10afe50100181ce89bcacea45786
deleted file mode 100644
index a158d0c..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/45/e04d10afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:13:46 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/1042f855e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/1042f855e20100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/1042f855e20100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/20548511e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/20548511e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/20548511e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/408a90d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/408a90d57506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/46/408a90d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/30af8979cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/30af8979cd0100181ce89bcacea45786
deleted file mode 100644
index 3a02123..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/30af8979cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* MODULE PARAMETERS */
--u _GBL_setPLLto225MHz
-GBL_USERINITFXN = _GBL_setPLLto225MHz;
-
--u MEM_NULL
-MEM_SEGZERO = MEM_NULL;
--u MEM_NULL
-MEM_MALLOCSEG = MEM_NULL;
-
--u CLK_F_getshtime
-CLK_TIMEFXN = CLK_F_getshtime;
--u HWI_F_dispatch
-CLK_HOOKFXN = HWI_F_dispatch;
-
--u _KNL_tick
-PRD_THOOKFXN = _KNL_tick;
-
--u IRAM
-RTDX_DATAMEMSEG = IRAM;
-
--u IRAM
-HST_DSMBUFSEG = IRAM;
-
--u GBL_NULL
-SWI_EHOOKFXN = GBL_NULL;
--u GBL_NULL
-SWI_IHOOKFXN = GBL_NULL;
--u SWI_F_exec
-SWI_EXECFXN = SWI_F_exec;
--u SWI_F_run
-SWI_RUNFXN = SWI_F_run;
-
--u MEM_NULL
-TSK_STACKSEG = MEM_NULL;
--u _FXN_F_nop
-TSK_VCREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VDELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VEXITFXN = _FXN_F_nop;
-
--u IDL_F_stub
-IDL_CALIBRFXN = IDL_F_stub;
-
--u _UTL_doAbort
-SYS_ABORTFXN = _UTL_doAbort;
--u _UTL_doError
-SYS_ERRORFXN = _UTL_doError;
--u _UTL_halt
-SYS_EXITFXN = _UTL_halt;
--u _UTL_doPutc
-SYS_PUTCFXN = _UTL_doPutc;
-
--u _FXN_F_nop
-GIO_CREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_DELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_PENDFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_POSTFXN = _FXN_F_nop;
-
-/* OBJECT ALIASES */
-_SDRAM = SDRAM;
-_IRAM = IRAM;
-_PRD_clock = PRD_clock;
-_RTA_fromHost = RTA_fromHost;
-_RTA_toHost = RTA_toHost;
-_HWI_RESET = HWI_RESET;
-_HWI_NMI = HWI_NMI;
-_HWI_RESERVED0 = HWI_RESERVED0;
-_HWI_RESERVED1 = HWI_RESERVED1;
-_HWI_INT4 = HWI_INT4;
-_HWI_INT5 = HWI_INT5;
-_HWI_INT6 = HWI_INT6;
-_HWI_INT7 = HWI_INT7;
-_HWI_INT8 = HWI_INT8;
-_HWI_INT9 = HWI_INT9;
-_HWI_INT10 = HWI_INT10;
-_HWI_INT11 = HWI_INT11;
-_HWI_INT12 = HWI_INT12;
-_HWI_INT13 = HWI_INT13;
-_HWI_INT14 = HWI_INT14;
-_HWI_INT15 = HWI_INT15;
-_KNL_swi = KNL_swi;
-_TSK_idle = TSK_idle;
-_IDL_cpuLoad = IDL_cpuLoad;
-_LNK_dataPump = LNK_dataPump;
-_RTA_dispatcher = RTA_dispatcher;
-_LOG_system = LOG_system;
-_IDL_busyObj = IDL_busyObj;
-
-/* MODULE GBL */
-
-SECTIONS {
- .vers (COPY): {} /* version information */
-}
-
--priority
---trampolines
--llnkrtdx.a67
--ldrivers.a67 /* device drivers support */
--lsioboth.a67 /* supports both SIO models */
--lbiosC6000.a67 /* BIOS clock specific library */
--lbios6x1x.a67 /* BIOS c6x1x specific library */
--lbios.a67 /* DSP/BIOS support */
--lrtdx.lib /* RTDX support */
--lrts6700.lib /* C and C++ run-time library support */
-
-_GBL_CACHE = GBL_CACHE;
-
-/* MODULE MEM */
--stack 0x400
-MEMORY {
- SDRAM : origin = 0x80000000, len = 0x800000
- IRAM : origin = 0x0, len = 0x40000
-}
-/* MODULE CLK */
-SECTIONS {
- .clk: {
-
- CLK_F_gethtime = CLK_F_getshtime;
- *(.clk)
- } > IRAM, RUN_START(CLK_A_TABBEG)
-}
-_CLK_PRD = CLK_PRD;
-_CLK_COUNTSPMS = CLK_COUNTSPMS;
-_CLK_REGS = CLK_REGS;
-_CLK_USETIMER = CLK_USETIMER;
-_CLK_TIMERNUM = CLK_TIMERNUM;
-_CLK_TDDR = CLK_TDDR;
-
-/* MODULE PRD */
-SECTIONS {
- .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {
- } > IRAM
-}
-PRD_A_TABLEN = 0;
-
-/* MODULE RTDX */
-_RTDX_interrupt_mask = 0x0;
-
-/* MODULE HST */
-_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask;
-_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask;
-_LNK_readDone = LNK_readDone;
-_LNK_readFail = LNK_readFail;
-_LNK_readPend = LNK_readPend;
-_LNK_writeFail = LNK_writeFail;
-/* MODULE HWI */
-SECTIONS {
- .hwi_vec: 0x0 {
- HWI_A_VECS = .;
- *(.hwi_vec)
- }
-}
-
-_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;
-
-/* MODULE SWI */
-SECTIONS {
- .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {
- } > IRAM
-}
-SWI_A_TABLEN = 1;
-
-/* MODULE TSK */
-SECTIONS {
- .tsk: {
- *(.tsk)
- } > IRAM
-}
-
-/* MODULE IDL */
-SECTIONS {
- .idl: {
- *(.idl)
- } > IRAM, RUN_START(IDL_A_TABBEG)
-
- .idlcal: {
- *(.idlcal)
- } > IRAM, RUN_START(IDL_A_CALBEG)
-}
-
-
-LOG_A_TABLEN = 1; _LOG_A_TABLEN = 1;
-
-PIP_A_TABLEN = 2;
-
-
-SECTIONS {
- .bss: {} > IRAM
-
- .far: {} > IRAM
-
- .sysdata: {} > IRAM
-
- .dsm: {} > IRAM
-
- frt: {} > IRAM
-
- .mem: {} > IRAM
-
- .bios: {} > IRAM
-
- .cio: {} > IRAM
-
- .data: {} > IRAM
-
- .gio: {} > IRAM
-
- .pinit: {} > IRAM
-
- .sys: {} > IRAM
-
- .sysregs: {} > IRAM
-
- .text: {} > IRAM
-
- .cinit: {} > IRAM
-
- .switch: {} > IRAM
-
- .gblinit: {} > IRAM
-
- .sysinit: {} > IRAM
-
- .trcdata: {} > IRAM
-
- .hwi: {} > IRAM
-
- .rtdx_data: {} > IRAM
-
- .rtdx_text: {} > IRAM
-
- .TSK_idle$stk: {
- *(.TSK_idle$stk)
- } > IRAM
-
- /* LOG_system buffer */
- .LOG_system$buf: align = 0x100 {} > IRAM
-
- /* RTA_fromHost buffer */
- .hst1: align = 0x4 {} > IRAM
-
- /* RTA_toHost buffer */
- .hst0: align = 0x4 {} > IRAM
-
- GROUP {
- .const: align = 0x8 {}
- .printf (COPY): {}
- } > IRAM
-
- .args: align=4 fill=0 {
- *(.args)
- . += 0x4;
- } > IRAM
-
- .trace: fill = 0x0 align = 0x4 {
- _SYS_PUTCBEG = .;
- . += 0x200;
- _SYS_PUTCEND = . - 1;
- } > IRAM
-
- .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) {
- } > IRAM
-
- .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) {
- } > IRAM
-
- .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) {
- } > IRAM
-
- .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) {
- } > IRAM
-
- .stack: align = 0x8 {
- GBL_stackbeg = .;
- *(.stack)
- GBL_stackend = GBL_stackbeg + 0x400 - 1;
- _HWI_STKBOTTOM = GBL_stackbeg + 0x400 - 8;
- _HWI_STKTOP = GBL_stackbeg;
- } > IRAM
-
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/80e417f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/80e417f344070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/80e417f344070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/b019b3cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/b019b3cc7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/47/b019b3cc7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/20cdb2d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/20cdb2d3e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/20cdb2d3e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/d05f734c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/d05f734c7506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/48/d05f734c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/70ad11afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/70ad11afe50100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/70ad11afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/9094e724610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/9094e724610b001815de8ca47440e6f8
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/49/9094e724610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/6070c5f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/6070c5f041070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/6070c5f041070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/80189979cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/80189979cd0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/80189979cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/90a47acc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/90a47acc7506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4a/90a47acc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4b/b03caf40d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4b/b03caf40d80100181ce89bcacea45786
deleted file mode 100644
index 94072ac..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4b/b03caf40d80100181ce89bcacea45786
+++ /dev/null
@@ -1,173 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-
-// Table size
-#define SINE_TABLE_SIZE 256
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
-
-/* Sampling frequency in HZ. Must only be set to 8000, 16000, 24000
-32000, 44100 (CD standard), 48000 or 96000 */
-int sampling_freq = 8000;
-
-/* Use this variable in your code to set the frequency of your sine wave
- be carefull that you do not set it above the current nyquist frequency! */
-float sine_freq = 1000.0;
-
-// Declares the global sine table that will be used to generate the sine wave
-float table[SINE_TABLE_SIZE];
-
-// Current index in the table, that can be used to calculate the next index
-int sine_index = 0;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-float sinegen(void);
-void ISR_AIC(void);
-void sine_init(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- // initialize the sine wave
- sine_init();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_XINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_XINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-// populates the table with appropriate sine values
-void sine_init()
-{
- int i;
- for(i = 0; i < SINE_TABLE_SIZE; i++)
- {
- table[i] = sin(2 * PI * i / SINE_TABLE_SIZE);
- }
-}
-
-// returns the sample according to the sampling frequency
-float sinegen()
-{
- unsigned sample_index = sine_index * sine_freq * SINE_TABLE_SIZE / sampling_freq;
- sample_index %= SINE_TABLE_SIZE;
- sine_index++;
- return table[sample_index];
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- // temporary variable used to output values from function
- float wave_out, wave;
-
- wave = sinegen();
- wave_out = wave < 0 ? wave : -wave;
-
- mono_write_16Bit((short)(wave_out*32767));
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/00995c0d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/00995c0d7606001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/00995c0d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/2031a9277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/2031a9277506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/2031a9277506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/8016910d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/8016910d7606001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4c/8016910d7606001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/303e8779cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/303e8779cd0100181ce89bcacea45786
deleted file mode 100644
index 1f831ca..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/303e8779cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718aeH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/30550e8f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/30550e8f41070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/30550e8f41070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/9021d0c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/9021d0c9e10100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/9021d0c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0de8579cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0de8579cd0100181ce89bcacea45786
deleted file mode 100644
index 131cf32..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0de8579cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,14 +0,0 @@
-utils.loadPlatform("ti.platforms.dsk6713");
-
-/* The following DSP/BIOS Features are enabled. */
-bios.enableRealTimeAnalysis(prog);
-bios.enableRtdx(prog);
-bios.enableTskManager(prog);
-
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive");
-bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC");
-bios.HWI.instance("HWI_INT4").useDispatcher = 1;
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit");
-// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
-
-prog.gen();
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/105ce42de10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/105ce42de10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/105ce42de10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/b014fc2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/b014fc2ddf0100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4e/b014fc2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/20bd9579cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/20bd9579cd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/20bd9579cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/e0b5801fd90100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/e0b5801fd90100181ce89bcacea45786
deleted file mode 100644
index 1d9ca99..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/4f/e0b5801fd90100181ce89bcacea45786
+++ /dev/null
@@ -1,145 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-
-short non_circ_fir()
-{
-
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/00aae4aee50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/00aae4aee50100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/00aae4aee50100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/506c4f3fdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/506c4f3fdd0100181ce89bcacea45786
deleted file mode 100644
index 2390a34..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/50/506c4f3fdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {-
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/903cb055e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/903cb055e20100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/903cb055e20100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/90d0f16bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/90d0f16bdd0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/52/90d0f16bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/53/50d1b0d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/53/50d1b0d3e10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/53/50d1b0d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/00ef12167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/00ef12167506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/00ef12167506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/9005ea24610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/9005ea24610b001815de8ca47440e6f8
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/9005ea24610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/a0ea724c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/a0ea724c7506001814daa3a49c232c18
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/54/a0ea724c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/10f9b9d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/10f9b9d3e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/10f9b9d3e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/50231bafe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/50231bafe50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/50231bafe50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/60071af344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/60071af344070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/60071af344070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/90d58079cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/90d58079cd0100181ce89bcacea45786
deleted file mode 100644
index f13e3eb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/90d58079cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header File */
-#include "dsp_bios_cfg.h"
-
-/* Config Structures */
-/* Handles */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/d0718179cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/d0718179cd0100181ce89bcacea45786
deleted file mode 100644
index da1e893..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/55/d0718179cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 18 13:48:06 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iEventId :: 14
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/57/409b1ef344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/57/409b1ef344070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/57/409b1ef344070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/6004870d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/6004870d7606001814daa3a49c232c18
deleted file mode 100644
index b6f42bc..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/6004870d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,1755 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Wed Jan 31 10:59:42 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a900
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd27 000342d9 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002360
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000320 intio.obj (.text)
- 00005180 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005460 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056a0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005860 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a00 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005b80 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d00 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e40 00000120 : sinit.obj (.text:_call_dtors)
- 00005f60 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006060 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006160 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00006260 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006340 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006420 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 000064e0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006580 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 000065c0 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006600 00000040 : divf.obj (.text:___isnanf)
- 00006640 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006660 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006680 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066a0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 000066c0 00000020 : _lock.obj (.text:__register_lock)
- 000066e0 00000020 : _lock.obj (.text:__register_unlock)
- 00006700 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006720 00001754
- 00006720 00000810 intio.obj (.cinit)
- 00006f30 00000564 dsp_bios_cfg.obj (.cinit)
- 00007494 00000004 --HOLE-- [fill = 0]
- 00007498 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007704 00000004 --HOLE-- [fill = 0]
- 00007708 000001a4 : knl.o67 (.cinit)
- 000078ac 00000004 --HOLE-- [fill = 0]
- 000078b0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 000079dc 00000004 --HOLE-- [fill = 0]
- 000079e0 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007a90 00000070 : tsk.o67 (.cinit)
- 00007b00 00000060 : tsk_stup.o67 (.cinit)
- 00007b60 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bbc 00000004 --HOLE-- [fill = 0]
- 00007bc0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c14 00000004 --HOLE-- [fill = 0]
- 00007c18 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c64 00000004 --HOLE-- [fill = 0]
- 00007c68 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cb4 00000004 --HOLE-- [fill = 0]
- 00007cb8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007cec 00000004 --HOLE-- [fill = 0]
- 00007cf0 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d20 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d4c 00000004 --HOLE-- [fill = 0]
- 00007d50 0000002c rts6700.lib : exit.obj (.cinit)
- 00007d7c 00000004 --HOLE-- [fill = 0]
- 00007d80 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007da4 00000004 --HOLE-- [fill = 0]
- 00007da8 0000001c : sys.o67 (.cinit)
- 00007dc4 00000004 --HOLE-- [fill = 0]
- 00007dc8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007de4 00000004 --HOLE-- [fill = 0]
- 00007de8 0000001c : atexit.obj (.cinit)
- 00007e04 00000004 --HOLE-- [fill = 0]
- 00007e08 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e20 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e30 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e3c 00000004 --HOLE-- [fill = 0]
- 00007e40 0000000c : idl_busy.o67 (.cinit)
- 00007e4c 00000004 --HOLE-- [fill = 0]
- 00007e50 0000000c : knl_swit.o67 (.cinit)
- 00007e5c 00000004 --HOLE-- [fill = 0]
- 00007e60 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007e74 00000004
- 00007e74 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007e78 000014c8 UNINITIALIZED
- 00007e78 00000fb8 intio.obj (.far)
- 00008e30 00000188 rts6700.lib : atexit.obj (.far)
- 00008fb8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090ac 000000d8 bios.a67 : knl.o67 (.far)
- 00009184 0000005c : tsk.o67 (.far)
- 000091e0 00000054 : obj_init.o67 (.far)
- 00009234 00000050 : tsk_stup.o67 (.far)
- 00009284 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092bc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 000092e4 00000020 bios.a67 : sys.o67 (.far)
- 00009304 00000010 : knl_tick.o67 (.far)
- 00009314 0000000c : utl_putc.o67 (.far)
- 00009320 0000000c rts6700.lib : exit.obj (.far)
- 0000932c 00000008 : _lock.obj (.far)
- 00009334 00000008 : divf.obj (.far)
- 0000933c 00000004 : sinit.obj (.far)
-
-.rtdx_text
-* 0 00009340 00000ea0
- 00009340 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009740 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009a80 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009d80 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009ec0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fa0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a020 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a080 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a0e0 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a120 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a160 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a180 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1a0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a1c0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a1e0 0000044c UNINITIALIZED
- 0000a1e0 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a5f0 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a610 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 0000a62c 00000010 UNINITIALIZED
- 0000a62c 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 0000a640 00000420
- 0000a640 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a900 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a9c0 00000080 : tsk_init.o67 (.sysinit)
- 0000aa40 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aa60 00000400 UNINITIALIZED
- 0000aa60 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000ae60 00000400 UNINITIALIZED
- 0000ae60 00000400 --HOLE--
-
-.bss 0 0000b260 00000342 UNINITIALIZED
- 0000b260 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b360 000000cc : biosdata.o67 (.bss)
- 0000b42c 0000009c : swi.o67 (.bss)
- 0000b4c8 00000048 : knl.o67 (.bss)
- 0000b510 00000018 : hwi.o67 (.bss)
- 0000b528 00000018 dsp_bios_cfg.obj (.bss)
- 0000b540 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b558 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b568 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b574 00000008 : clk_data.o67 (.bss)
- 0000b57c 00000008 : sys.o67 (.bss)
- 0000b584 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b58c 00000008 intio.obj (.bss)
- 0000b594 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b598 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b59c 00000004 : idl_busy.o67 (.bss)
- 0000b5a0 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5a4 00000200
- 0000b5a4 00000200 --HOLE-- [fill = 00000000]
-
-.gblinit 0 0000b7a4 00000040
- 0000b7a4 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.log 0 0000b7e4 00000018
- 0000b7e4 00000018 dsp_bios_cfg.obj (.log)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.hst 0 0000bc24 0000003c UNINITIALIZED
- 0000bc24 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bc60 00000030
- 0000bc60 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bc90 0000002c UNINITIALIZED
- 0000bc90 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcbc 00000028
- 0000bcbc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idl 0 0000bce4 00000010 UNINITIALIZED
- 0000bce4 00000010 dsp_bios_cfg.obj (.idl)
-
-.idlcal 0 0000bcf4 00000010 UNINITIALIZED
- 0000bcf4 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd04 00000010 UNINITIALIZED
- 0000bd04 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd14 0000000c
- 0000bd14 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd18 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd1c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd20 0000000c
- 0000bd20 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd2c 00000008 UNINITIALIZED
- 0000bd2c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b260 $bss
-0000b260 .bss
-00000000 .data
-000043c0 .text
-0000a7e4 BIOS$$CLKOFF
-0000a7a4 BIOS$$CLKON
-0000a640 BIOS_init
-0000a84c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd2c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b388 CLK_D_idletime
-0000b384 CLK_D_isrhook
-0000b380 CLK_D_tabbeg
-0000b37c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b378 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd30 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a28 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd28 GBL_initdone
-0000ae60 GBL_stackbeg
-0000b25f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc24 HST_A_TABBEG
-0000bc60 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b3f4 HST_D_chanmask
-0000b3f8 HST_D_tabbeg
-0000b3fc HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b520 HWI_D_bss
-0000b524 HWI_D_ccmask
-0000b510 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bcf4 IDL_A_CALBEG
-0000bce4 IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b59c IDL_D_busyObj
-0000b368 IDL_D_calbeg
-0000b364 IDL_D_calibrate
-0000b360 IDL_D_tabbeg
-0000bcf0 IDL_END
-0000bd00 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bc84 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bc80 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000bce4 IDL_cpuLoad
-0000bcf4 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bc90 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bc64 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bc60 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000bce8 LNK_dataPump
-0000bcf8 LNK_dataPump$
-0000b544 LNK_dspFrameReadyMask
-0000b540 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b54c LNK_readDone
-0000b550 LNK_readFail
-0000b548 LNK_readPend
-00000370 LNK_rrloop
-0000b554 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b7e4 LOG_A_TABBEG
-0000b7fc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b36c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b7e4 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b370 PIP_D_tabbeg
-0000b374 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3b0 PRD_D_cur
-0000b3b4 PRD_D_elapsed
-0000b3b8 PRD_D_prevtim
-0000b3bc PRD_D_scalar
-0000b3c0 PRD_D_swihandle
-0000b3c4 PRD_D_tabbeg
-0000b3c8 PRD_D_tablen
-0000b3cc PRD_D_thook
-0000b3ac PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd2c PRD_clock
-00000001 QUE$
-0000b3d0 RTA_D_fromHost
-0000b3d8 RTA_D_logval
-0000b3e8 RTA_D_stsval
-0000b3d4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000bcec RTA_dispatcher
-0000bcfc RTA_dispatcher$
-00001f28 RTA_execute
-0000bc28 RTA_fromHost
-0000a62c RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b528 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc30 RTA_fromHost$rtdx
-0000bc44 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b534 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc4c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bc60 STS_A_TABBEG
-0000bc90 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bc90 SWI_A_TABBEG
-0000bcbc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b444 SWI_D_curfxn
-0000b434 SWI_D_curmask
-0000b440 SWI_D_curmbox
-0000b438 SWI_D_curset
-0000b430 SWI_D_execaddr
-0000b44c SWI_D_inswi
-0000b43c SWI_D_lock
-0000b448 SWI_D_rdybeg
-0000b450 SWI_D_rdytab
-0000b42c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd04 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd24 TRC_R_mask
-0000bd20 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aa60 TSK_idle$stack
-0000adf8 TSK_idle$stkptr
-0000bc74 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bc70 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a640 _BIOS_init
-0000a84c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b574 _CLK_DFLTMICROSECS
-0000b3a8 _CLK_D_countspms
-0000b39c _CLK_D_dirty
-0000b578 _CLK_D_microseconds
-0000b3a0 _CLK_D_prd
-0000b3a4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b38c _CLK_htimeDiv
-0000b390 _CLK_htimeMult
-0000b594 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b394 _CLK_ltimeDiv
-0000b398 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e08 _Config
-0000b584 _DSK6713_AIC23_codeccontrolhandle
-0000b588 _DSK6713_AIC23_codecdatahandle
-00005c6c _DSK6713_AIC23_config
-00005180 _DSK6713_AIC23_openCodec
-00005c48 _DSK6713_AIC23_rget
-00005b80 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5a0 _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b404 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b408 _GBL_freq
-00004320 _GBL_getVersion
-0000b400 _GBL_procId
-00005a28 _GBL_setPLLto225MHz
-0000bc24 _HST_A_TABBEG
-0000bc60 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b51c _HWI_D_inhwi
-0000b510 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b258 _HWI_STKBOTTOM
-0000ae60 _HWI_STKTOP
-0000b510 _HWI_data
-00004020 _HWI_disable
-0000b260 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b590 _H_Codec
-0000bc84 _IDL_busyObj
-0000bce4 _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006580 _IRQ_enable
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-000056a0 _IRQ_map
-00006680 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b4d0 _KNL_alarm
-00003440 _KNL_check
-0000b4f4 _KNL_curqueue
-0000b4e4 _KNL_curtask
-0000b4ec _KNL_curtime
-0000914c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b50c _KNL_idlefxn
-0000b4d8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b4f8 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b4e8 _KNL_prevtask
-0000b4dc _KNL_priority
-000090ac _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b4e0 _KNL_set
-0000b4d4 _KNL_setpri
-0000bc90 _KNL_swi
-0000b4f0 _KNL_swiptr
-00002cec _KNL_switch
-0000b500 _KNL_tcreatefxn
-0000b504 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b508 _KNL_treadyfxn
-0000b4fc _KNL_tswitchfxn
-0000b4c8 _KNL_wFlag
-0000b4cc _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000bce8 _LNK_dataPump
-0000b544 _LNK_dspFrameReadyMask
-0000b540 _LNK_dspFrameRequestMask
-0000b54c _LNK_readDone
-0000b550 _LNK_readFail
-0000b548 _LNK_readPend
-0000b554 _LNK_writeFail
-0000b7e4 _LOG_A_TABBEG
-0000b7fc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b36c _LOG_D_system
-00003ea0 _LOG_event
-0000b7e4 _LOG_system
-00005f60 _MCBSP_open
-00005860 _MCBSP_reset
-00006060 _MCBSP_start
-0000b40c _MEM_D_NUMSEGMENTS
-0000b414 _MEM_D_freelist
-0000b418 _MEM_D_lockaddr
-0000b410 _MEM_D_memtab
-0000b41c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa40 _OBJ_init
-00009218 _OBJ_segtab
-000091e0 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3ac _PRD_D_tick
-0000bd2c _PRD_clock
-0000bcec _RTA_dispatcher
-0000bc28 _RTA_fromHost
-0000bc44 _RTA_toHost
-0000a1e0 _RTDX_Buffer
-0000a5ec _RTDX_Buffer_End
-0000a020 _RTDX_Buffer_Initialize
-0000a160 _RTDX_Buffer_Read
-0000a080 _RTDX_Buffer_ReadCB
-0000a0e0 _RTDX_Buffer_Size
-0000a5e8 _RTDX_Buffer_Start
-0000a180 _RTDX_Buffer_Write
-00009740 _RTDX_Buffer_WriteCB
-0000a120 _RTDX_Final_RT_Monitor
-00009fa0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a1c0 _RTDX_Mask_IER
-00009d80 _RTDX_Mon_Queue
-00009340 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a5fc _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bc60 _STS_A_TABBEG
-0000bc90 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b444 _SWI_D_curfxn
-0000b434 _SWI_D_curmask
-0000b438 _SWI_D_curset
-0000b430 _SWI_D_execaddr
-0000b44c _SWI_D_inswi
-0000b43c _SWI_D_lock
-0000b448 _SWI_D_rdybeg
-0000b42c _SWI_D_runaddr
-0000b42c _SWI_data
-00000e50 _SWI_post
-0000b420 _SYS
-0000b5a4 _SYS_PUTCBEG
-0000b7a3 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-000092e4 _SYS_exitStack
-0000b57c _SYS_exitStackPtr
-0000b580 _SYS_exitStackTop
-0000bd24 _TRC_R_mask
-0000b570 _TSK
-00009184 _TSK_ATTRS
-000091a0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000a9c0 _TSK_init
-0000b568 _TSK_nTasks
-0000b56c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091c0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b428 __HOOK_NUMHOOKS
-0000b424 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090a4 __IRQ_dispatchTable
-00008fe0 __IRQ_eventTable
-00006700 __IRQ_hookFetchPacket
-00009064 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092b4 __MCBSP_hDev0
-000092b8 __MCBSP_hDev1
-0000925c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009234 __TSK_mutex
-00009328 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-000065c0 ___add_dtor
-00008e30 ___atexit_func_id__
-ffffffff ___binit__
-0000b260 ___bss__
-ffffffff ___c_args__
-00006720 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5a2 ___end__
-00006720 ___etext__
-0000bd14 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009320 __cleanup_ptr
-000043c0 __divf
-00009324 __dtors_ptr
-00006260 __frcmpyf_div
-0000932c __lock
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-0000ae60 __stack
-00005d00 __strasgi
-00009330 __unlock
-00006160 _atexit
-00007e78 _b
-00008640 _buffer
-0000a900 _c_int00
-00005e40 _call_dtors
-0000933c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-00005460 _memcpy
-000063bc _mono_read_16Bit
-00006394 _mono_write_16Bit
-000050a8 _non_circ_fir
-0000b58c _ptr
-0000b560 _rtdxNullChanCnt
-0000b564 _rtdxNullFuncCnt
-0000a5f0 _rtdx_buffer_state
-0000a610 _rtdx_mon_state
-00006368 _stereo_read_16Bit
-00006340 _stereo_write_16Bit
-00005a00 _wait500nS
-ffffffff binit
-00006720 cinit
-00000000 edata
-0000b5a2 end
-00006720 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd14 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050a8 _non_circ_fir
-00005180 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-00005460 _memcpy
-000056a0 _IRQ_map
-00005860 _MCBSP_reset
-00005a00 _wait500nS
-00005a28 GBL_USERINITFXN
-00005a28 _GBL_setPLLto225MHz
-00005b80 _DSK6713_AIC23_rset
-00005c48 _DSK6713_AIC23_rget
-00005c6c _DSK6713_AIC23_config
-00005d00 __strasgi
-00005e40 _call_dtors
-00005f60 _MCBSP_open
-00006060 _MCBSP_start
-00006160 _atexit
-00006260 __frcmpyf_div
-00006340 _stereo_write_16Bit
-00006368 _stereo_read_16Bit
-00006394 _mono_write_16Bit
-000063bc _mono_read_16Bit
-00006580 _IRQ_enable
-000065c0 ___add_dtor
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-00006680 _IRQ_nmiEnable
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-00006700 __IRQ_hookFetchPacket
-00006720 ___cinit__
-00006720 ___etext__
-00006720 cinit
-00006720 etext
-00007e78 _b
-00008640 _buffer
-00008e08 _Config
-00008e30 ___atexit_func_id__
-00008fe0 __IRQ_eventTable
-00009064 __IRQ_intTable
-000090a4 __IRQ_dispatchTable
-000090ac _KNL_queues
-0000914c _KNL_dummy
-00009184 _TSK_ATTRS
-000091a0 _TSK_config
-000091c0 _TSK_timerSem
-000091e0 _OBJ_table
-00009218 _OBJ_segtab
-00009234 __TSK_mutex
-0000925c __MEM_mutex
-000092b4 __MCBSP_hDev0
-000092b8 __MCBSP_hDev1
-000092e4 _SYS_exitStack
-00009320 __cleanup_ptr
-00009324 __dtors_ptr
-00009328 ___TI_enable_exit_profile_output
-0000932c __lock
-00009330 __unlock
-0000933c _dtors
-00009340 _RTDX_Poll
-00009740 _RTDX_Buffer_WriteCB
-00009d80 _RTDX_Mon_Queue
-00009fa0 _RTDX_Init_RT_Monitor
-0000a020 _RTDX_Buffer_Initialize
-0000a080 _RTDX_Buffer_ReadCB
-0000a0e0 _RTDX_Buffer_Size
-0000a120 _RTDX_Final_RT_Monitor
-0000a160 _RTDX_Buffer_Read
-0000a180 _RTDX_Buffer_Write
-0000a1c0 _RTDX_Mask_IER
-0000a1e0 _RTDX_Buffer
-0000a5e8 _RTDX_Buffer_Start
-0000a5ec _RTDX_Buffer_End
-0000a5f0 _rtdx_buffer_state
-0000a5fc _RTDX_writing
-0000a610 _rtdx_mon_state
-0000a62c RTA_fromHost$buf
-0000a640 BIOS_init
-0000a640 _BIOS_init
-0000a7a4 BIOS$$CLKON
-0000a7e4 BIOS$$CLKOFF
-0000a84c BIOS_start
-0000a84c _BIOS_start
-0000a900 _c_int00
-0000a9c0 _TSK_init
-0000aa40 _OBJ_init
-0000aa60 TSK_idle$stack
-0000adf8 TSK_idle$stkptr
-0000ae60 GBL_stackbeg
-0000ae60 _HWI_STKTOP
-0000ae60 __stack
-0000b258 _HWI_STKBOTTOM
-0000b25f GBL_stackend
-0000b260 $bss
-0000b260 .bss
-0000b260 _HWI_dispatchTab
-0000b260 ___bss__
-0000b360 IDL_D_tabbeg
-0000b364 IDL_D_calibrate
-0000b368 IDL_D_calbeg
-0000b36c LOG_D_system
-0000b36c _LOG_D_system
-0000b370 PIP_D_tabbeg
-0000b374 PIP_D_tablen
-0000b378 CLK_R_time
-0000b37c CLK_D_timefxn
-0000b380 CLK_D_tabbeg
-0000b384 CLK_D_isrhook
-0000b388 CLK_D_idletime
-0000b38c _CLK_htimeDiv
-0000b390 _CLK_htimeMult
-0000b394 _CLK_ltimeDiv
-0000b398 _CLK_ltimeMult
-0000b39c _CLK_D_dirty
-0000b3a0 _CLK_D_prd
-0000b3a4 _CLK_D_tddr
-0000b3a8 _CLK_D_countspms
-0000b3ac PRD_D_tick
-0000b3ac _PRD_D_tick
-0000b3b0 PRD_D_cur
-0000b3b4 PRD_D_elapsed
-0000b3b8 PRD_D_prevtim
-0000b3bc PRD_D_scalar
-0000b3c0 PRD_D_swihandle
-0000b3c4 PRD_D_tabbeg
-0000b3c8 PRD_D_tablen
-0000b3cc PRD_D_thook
-0000b3d0 RTA_D_fromHost
-0000b3d4 RTA_D_toHost
-0000b3d8 RTA_D_logval
-0000b3e8 RTA_D_stsval
-0000b3f4 HST_D_chanmask
-0000b3f8 HST_D_tabbeg
-0000b3fc HST_D_tabend
-0000b400 _GBL_procId
-0000b404 _GBL_clkIn
-0000b408 _GBL_freq
-0000b40c _MEM_D_NUMSEGMENTS
-0000b410 _MEM_D_memtab
-0000b414 _MEM_D_freelist
-0000b418 _MEM_D_lockaddr
-0000b41c _MEM_D_unlockaddr
-0000b420 _SYS
-0000b424 __HOOK_knlId
-0000b428 __HOOK_NUMHOOKS
-0000b42c SWI_D_runaddr
-0000b42c _SWI_D_runaddr
-0000b42c _SWI_data
-0000b430 SWI_D_execaddr
-0000b430 _SWI_D_execaddr
-0000b434 SWI_D_curmask
-0000b434 _SWI_D_curmask
-0000b438 SWI_D_curset
-0000b438 _SWI_D_curset
-0000b43c SWI_D_lock
-0000b43c _SWI_D_lock
-0000b440 SWI_D_curmbox
-0000b444 SWI_D_curfxn
-0000b444 _SWI_D_curfxn
-0000b448 SWI_D_rdybeg
-0000b448 _SWI_D_rdybeg
-0000b44c SWI_D_inswi
-0000b44c _SWI_D_inswi
-0000b450 SWI_D_rdytab
-0000b4c8 _KNL_wFlag
-0000b4cc _KNL_wList
-0000b4d0 _KNL_alarm
-0000b4d4 _KNL_setpri
-0000b4d8 _KNL_inactive
-0000b4dc _KNL_priority
-0000b4e0 _KNL_set
-0000b4e4 _KNL_curtask
-0000b4e8 _KNL_prevtask
-0000b4ec _KNL_curtime
-0000b4f0 _KNL_swiptr
-0000b4f4 _KNL_curqueue
-0000b4f8 _KNL_maxqueue
-0000b4fc _KNL_tswitchfxn
-0000b500 _KNL_tcreatefxn
-0000b504 _KNL_tdeletefxn
-0000b508 _KNL_treadyfxn
-0000b50c _KNL_idlefxn
-0000b510 HWI_D_spsave
-0000b510 _HWI_D_spsave
-0000b510 _HWI_data
-0000b51c _HWI_D_inhwi
-0000b520 HWI_D_bss
-0000b524 HWI_D_ccmask
-0000b528 RTA_fromHost$pipe$dtab
-0000b534 RTA_toHost$pipe$dtab
-0000b540 LNK_dspFrameRequestMask
-0000b540 _LNK_dspFrameRequestMask
-0000b544 LNK_dspFrameReadyMask
-0000b544 _LNK_dspFrameReadyMask
-0000b548 LNK_readPend
-0000b548 _LNK_readPend
-0000b54c LNK_readDone
-0000b54c _LNK_readDone
-0000b550 LNK_readFail
-0000b550 _LNK_readFail
-0000b554 LNK_writeFail
-0000b554 _LNK_writeFail
-0000b560 _rtdxNullChanCnt
-0000b564 _rtdxNullFuncCnt
-0000b568 _TSK_nTasks
-0000b56c _TSK_pid
-0000b570 _TSK
-0000b574 _CLK_DFLTMICROSECS
-0000b578 _CLK_D_microseconds
-0000b57c _SYS_exitStackPtr
-0000b580 _SYS_exitStackTop
-0000b584 _DSK6713_AIC23_codeccontrolhandle
-0000b588 _DSK6713_AIC23_codecdatahandle
-0000b58c _ptr
-0000b590 _H_Codec
-0000b594 _CLK_htimePerLtime
-0000b59c IDL_D_busyObj
-0000b5a0 _DSK6713_version
-0000b5a2 ___end__
-0000b5a2 end
-0000b5a4 _SYS_PUTCBEG
-0000b7a3 _SYS_PUTCEND
-0000b7e4 LOG_A_TABBEG
-0000b7e4 LOG_system
-0000b7e4 _LOG_A_TABBEG
-0000b7e4 _LOG_system
-0000b7fc LOG_A_TABEND
-0000b7fc _LOG_A_TABEND
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc24 HST_A_TABBEG
-0000bc24 _HST_A_TABBEG
-0000bc28 RTA_fromHost
-0000bc28 _RTA_fromHost
-0000bc30 RTA_fromHost$rtdx
-0000bc44 RTA_toHost
-0000bc44 _RTA_toHost
-0000bc4c RTA_toHost$rtdx
-0000bc60 HST_A_TABEND
-0000bc60 KNL_swi$sts$stsobj
-0000bc60 STS_A_TABBEG
-0000bc60 _HST_A_TABEND
-0000bc60 _STS_A_TABBEG
-0000bc64 KNL_swi$sts
-0000bc70 TSK_idle$sts$stsobj
-0000bc74 TSK_idle$sts
-0000bc80 IDL_busyObj$stsobj
-0000bc84 IDL_busyObj
-0000bc84 _IDL_busyObj
-0000bc90 KNL_swi
-0000bc90 STS_A_TABEND
-0000bc90 SWI_A_TABBEG
-0000bc90 _KNL_swi
-0000bc90 _STS_A_TABEND
-0000bcbc SWI_A_TABEND
-0000bce4 IDL_A_TABBEG
-0000bce4 IDL_cpuLoad
-0000bce4 _IDL_cpuLoad
-0000bce8 LNK_dataPump
-0000bce8 _LNK_dataPump
-0000bcec RTA_dispatcher
-0000bcec _RTA_dispatcher
-0000bcf0 IDL_END
-0000bcf4 IDL_A_CALBEG
-0000bcf4 IDL_cpuLoad$
-0000bcf8 LNK_dataPump$
-0000bcfc RTA_dispatcher$
-0000bd00 IDL_END$
-0000bd04 SYS$config
-0000bd14 ___pinit__
-0000bd14 pinit
-0000bd20 TRC_cinit
-0000bd24 TRC_R_mask
-0000bd24 _TRC_R_mask
-0000bd28 GBL_initdone
-0000bd2c CLK_A_TABBEG
-0000bd2c PRD_clock
-0000bd2c _PRD_clock
-0000bd30 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[718 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/7046fb6bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/7046fb6bdd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/7046fb6bdd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/70b0b998d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/70b0b998d80100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/70b0b998d80100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/d036ede4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/d036ede4e50100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/58/d036ede4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5a/a028c68e41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5a/a028c68e41070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5a/a028c68e41070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80bc8150dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80bc8150dd0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80bc8150dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80f3b481dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80f3b481dd0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/80f3b481dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a0fbb2173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a0fbb2173f070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/a0fbb2173f070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/b0d781f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/b0d781f041070018153483e962c7925e
deleted file mode 100644
index 9d00a24..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5b/b0d781f041070018153483e962c7925e
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N]= {0};
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N;
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = ptr; i < N+ptr; i++) {
- y += buffer[i%N] * b[M-(i%N)-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5c/c00f16f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5c/c00f16f344070018153483e962c7925e
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5c/c00f16f344070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5d/508966173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5d/508966173f070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5d/508966173f070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/00c98679cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/00c98679cd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/00c98679cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1068da3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1068da3a45070018153483e962c7925e
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1068da3a45070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/40a705e07406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/40a705e07406001814daa3a49c232c18
deleted file mode 100644
index 0aeda0e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/40a705e07406001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/b088b098d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/b088b098d80100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/b088b098d80100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0c9cd8e41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0c9cd8e41070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0c9cd8e41070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f00bbdf041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f00bbdf041070018153483e962c7925e
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/5e/f00bbdf041070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/00e3a8277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/00e3a8277506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/00e3a8277506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/8002eae4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/8002eae4e50100181ce89bcacea45786
deleted file mode 100644
index a5760f9..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/60/8002eae4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,1753 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 15:37:45 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a960
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd73 0003428d RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000023a0
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000360 intio.obj (.text)
- 000051c0 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 000054a0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056e0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000058a0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a40 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005bc0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d40 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e80 00000120 : sinit.obj (.text:_call_dtors)
- 00005fa0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000060a0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000061a0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 000062a0 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006380 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006460 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006520 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 000065c0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006600 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006640 00000040 : divf.obj (.text:___isnanf)
- 00006680 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000066a0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000066c0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066e0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006700 00000020 : _lock.obj (.text:__register_lock)
- 00006720 00000020 : _lock.obj (.text:__register_unlock)
- 00006740 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006760 00001754
- 00006760 00000810 intio.obj (.cinit)
- 00006f70 00000564 dsp_bios_cfg.obj (.cinit)
- 000074d4 00000004 --HOLE-- [fill = 0]
- 000074d8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007744 00000004 --HOLE-- [fill = 0]
- 00007748 000001a4 : knl.o67 (.cinit)
- 000078ec 00000004 --HOLE-- [fill = 0]
- 000078f0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 00007a1c 00000004 --HOLE-- [fill = 0]
- 00007a20 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007ad0 00000070 : tsk.o67 (.cinit)
- 00007b40 00000060 : tsk_stup.o67 (.cinit)
- 00007ba0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bfc 00000004 --HOLE-- [fill = 0]
- 00007c00 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c54 00000004 --HOLE-- [fill = 0]
- 00007c58 0000004c bios.a67 : rta.o67 (.cinit)
- 00007ca4 00000004 --HOLE-- [fill = 0]
- 00007ca8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cf4 00000004 --HOLE-- [fill = 0]
- 00007cf8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007d2c 00000004 --HOLE-- [fill = 0]
- 00007d30 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d60 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d8c 00000004 --HOLE-- [fill = 0]
- 00007d90 0000002c rts6700.lib : exit.obj (.cinit)
- 00007dbc 00000004 --HOLE-- [fill = 0]
- 00007dc0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007de4 00000004 --HOLE-- [fill = 0]
- 00007de8 0000001c : sys.o67 (.cinit)
- 00007e04 00000004 --HOLE-- [fill = 0]
- 00007e08 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007e24 00000004 --HOLE-- [fill = 0]
- 00007e28 0000001c : atexit.obj (.cinit)
- 00007e44 00000004 --HOLE-- [fill = 0]
- 00007e48 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e60 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e70 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e7c 00000004 --HOLE-- [fill = 0]
- 00007e80 0000000c : idl_busy.o67 (.cinit)
- 00007e8c 00000004 --HOLE-- [fill = 0]
- 00007e90 0000000c : knl_swit.o67 (.cinit)
- 00007e9c 00000004 --HOLE-- [fill = 0]
- 00007ea0 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007eac 00000004 --HOLE-- [fill = 0]
- 00007eb0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007eb4 00000004
- 00007eb4 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007eb8 000014d8 UNINITIALIZED
- 00007eb8 00000fc8 intio.obj (.far)
- 00008e80 00000188 rts6700.lib : atexit.obj (.far)
- 00009008 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090fc 000000d8 bios.a67 : knl.o67 (.far)
- 000091d4 0000005c : tsk.o67 (.far)
- 00009230 00000054 : obj_init.o67 (.far)
- 00009284 00000050 : tsk_stup.o67 (.far)
- 000092d4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 0000930c 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009334 00000020 bios.a67 : sys.o67 (.far)
- 00009354 00000010 : knl_tick.o67 (.far)
- 00009364 0000000c : utl_putc.o67 (.far)
- 00009370 0000000c rts6700.lib : exit.obj (.far)
- 0000937c 00000008 : _lock.obj (.far)
- 00009384 00000008 : divf.obj (.far)
- 0000938c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009390 00000010 UNINITIALIZED
- 00009390 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 000093a0 00000ea0
- 000093a0 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 000097a0 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009ae0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009de0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009f20 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 0000a000 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a080 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a0e0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a140 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a180 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a1c0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a1e0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a200 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a220 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a240 0000044c UNINITIALIZED
- 0000a240 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a650 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a670 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a68c 00000010 UNINITIALIZED
- 0000a68c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a6a0 00000420
- 0000a6a0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a960 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000aa20 00000080 : tsk_init.o67 (.sysinit)
- 0000aaa0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aac0 00000400 UNINITIALIZED
- 0000aac0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000aec0 00000400 UNINITIALIZED
- 0000aec0 00000400 --HOLE--
-
-.bss 0 0000b2c0 0000033e UNINITIALIZED
- 0000b2c0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b3c0 000000cc : biosdata.o67 (.bss)
- 0000b48c 0000009c : swi.o67 (.bss)
- 0000b528 00000048 : knl.o67 (.bss)
- 0000b570 00000018 : hwi.o67 (.bss)
- 0000b588 00000018 dsp_bios_cfg.obj (.bss)
- 0000b5a0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b5b8 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b5c8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b5d4 00000008 : clk_data.o67 (.bss)
- 0000b5dc 00000008 : sys.o67 (.bss)
- 0000b5e4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b5ec 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b5f0 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b5f4 00000004 : idl_busy.o67 (.bss)
- 0000b5f8 00000004 intio.obj (.bss)
- 0000b5fc 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b600 00000200
- 0000b600 00000200 --HOLE-- [fill = 00000000]
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bc24 00000040
- 0000bc24 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000bc64 0000003c UNINITIALIZED
- 0000bc64 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bca0 00000030
- 0000bca0 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bcd0 0000002c UNINITIALIZED
- 0000bcd0 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcfc 00000028
- 0000bcfc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000bd24 00000018
- 0000bd24 00000018 dsp_bios_cfg.obj (.log)
-
-.idlcal 0 0000bd3c 00000010 UNINITIALIZED
- 0000bd3c 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd4c 00000010 UNINITIALIZED
- 0000bd4c 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd5c 0000000c
- 0000bd5c 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd60 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd64 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd68 0000000c
- 0000bd68 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd74 00000008 UNINITIALIZED
- 0000bd74 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b2c0 $bss
-0000b2c0 .bss
-00000000 .data
-000043c0 .text
-0000a844 BIOS$$CLKOFF
-0000a804 BIOS$$CLKON
-0000a6a0 BIOS_init
-0000a8ac BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd74 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b3e8 CLK_D_idletime
-0000b3e4 CLK_D_isrhook
-0000b3e0 CLK_D_tabbeg
-0000b3dc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b3d8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd78 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a68 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd70 GBL_initdone
-0000aec0 GBL_stackbeg
-0000b2bf GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc64 HST_A_TABBEG
-0000bca0 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b454 HST_D_chanmask
-0000b458 HST_D_tabbeg
-0000b45c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b580 HWI_D_bss
-0000b584 HWI_D_ccmask
-0000b570 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd3c IDL_A_CALBEG
-0000a68c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b5f4 IDL_D_busyObj
-0000b3c8 IDL_D_calbeg
-0000b3c4 IDL_D_calibrate
-0000b3c0 IDL_D_tabbeg
-0000a698 IDL_END
-0000bd48 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bcc4 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bcc0 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a68c IDL_cpuLoad
-0000bd3c IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bcd0 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bca4 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bca0 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a690 LNK_dataPump
-0000bd40 LNK_dataPump$
-0000b5a4 LNK_dspFrameReadyMask
-0000b5a0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b5ac LNK_readDone
-0000b5b0 LNK_readFail
-0000b5a8 LNK_readPend
-00000370 LNK_rrloop
-0000b5b4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bd24 LOG_A_TABBEG
-0000bd3c LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b3cc LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bd24 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b3d0 PIP_D_tabbeg
-0000b3d4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b410 PRD_D_cur
-0000b414 PRD_D_elapsed
-0000b418 PRD_D_prevtim
-0000b41c PRD_D_scalar
-0000b420 PRD_D_swihandle
-0000b424 PRD_D_tabbeg
-0000b428 PRD_D_tablen
-0000b42c PRD_D_thook
-0000b40c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd74 PRD_clock
-00000001 QUE$
-0000b430 RTA_D_fromHost
-0000b438 RTA_D_logval
-0000b448 RTA_D_stsval
-0000b434 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a694 RTA_dispatcher
-0000bd44 RTA_dispatcher$
-00001f28 RTA_execute
-0000bc68 RTA_fromHost
-00009390 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b588 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b594 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc8c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bca0 STS_A_TABBEG
-0000bcd0 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bcd0 SWI_A_TABBEG
-0000bcfc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b4a4 SWI_D_curfxn
-0000b494 SWI_D_curmask
-0000b4a0 SWI_D_curmbox
-0000b498 SWI_D_curset
-0000b490 SWI_D_execaddr
-0000b4ac SWI_D_inswi
-0000b49c SWI_D_lock
-0000b4a8 SWI_D_rdybeg
-0000b4b0 SWI_D_rdytab
-0000b48c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd4c SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd6c TRC_R_mask
-0000bd68 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aac0 TSK_idle$stack
-0000ae58 TSK_idle$stkptr
-0000bcb4 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bcb0 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a6a0 _BIOS_init
-0000a8ac _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b5d4 _CLK_DFLTMICROSECS
-0000b408 _CLK_D_countspms
-0000b3fc _CLK_D_dirty
-0000b5d8 _CLK_D_microseconds
-0000b400 _CLK_D_prd
-0000b404 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b3ec _CLK_htimeDiv
-0000b3f0 _CLK_htimeMult
-0000b5ec _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b3f4 _CLK_ltimeDiv
-0000b3f8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e58 _Config
-0000b5e4 _DSK6713_AIC23_codeccontrolhandle
-0000b5e8 _DSK6713_AIC23_codecdatahandle
-00005cac _DSK6713_AIC23_config
-000051c0 _DSK6713_AIC23_openCodec
-00005c88 _DSK6713_AIC23_rget
-00005bc0 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5fc _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b464 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b468 _GBL_freq
-00004320 _GBL_getVersion
-0000b460 _GBL_procId
-00005a68 _GBL_setPLLto225MHz
-0000bc64 _HST_A_TABBEG
-0000bca0 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b57c _HWI_D_inhwi
-0000b570 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b2b8 _HWI_STKBOTTOM
-0000aec0 _HWI_STKTOP
-0000b570 _HWI_data
-00004020 _HWI_disable
-0000b2c0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5f8 _H_Codec
-0000bcc4 _IDL_busyObj
-0000a68c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-000065c0 _IRQ_enable
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000056e0 _IRQ_map
-000066c0 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b530 _KNL_alarm
-00003440 _KNL_check
-0000b554 _KNL_curqueue
-0000b544 _KNL_curtask
-0000b54c _KNL_curtime
-0000919c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b56c _KNL_idlefxn
-0000b538 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b558 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b548 _KNL_prevtask
-0000b53c _KNL_priority
-000090fc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b540 _KNL_set
-0000b534 _KNL_setpri
-0000bcd0 _KNL_swi
-0000b550 _KNL_swiptr
-00002cec _KNL_switch
-0000b560 _KNL_tcreatefxn
-0000b564 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b568 _KNL_treadyfxn
-0000b55c _KNL_tswitchfxn
-0000b528 _KNL_wFlag
-0000b52c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a690 _LNK_dataPump
-0000b5a4 _LNK_dspFrameReadyMask
-0000b5a0 _LNK_dspFrameRequestMask
-0000b5ac _LNK_readDone
-0000b5b0 _LNK_readFail
-0000b5a8 _LNK_readPend
-0000b5b4 _LNK_writeFail
-0000bd24 _LOG_A_TABBEG
-0000bd3c _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b3cc _LOG_D_system
-00003ea0 _LOG_event
-0000bd24 _LOG_system
-00005fa0 _MCBSP_open
-000058a0 _MCBSP_reset
-000060a0 _MCBSP_start
-0000b46c _MEM_D_NUMSEGMENTS
-0000b474 _MEM_D_freelist
-0000b478 _MEM_D_lockaddr
-0000b470 _MEM_D_memtab
-0000b47c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aaa0 _OBJ_init
-00009268 _OBJ_segtab
-00009230 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b40c _PRD_D_tick
-0000bd74 _PRD_clock
-0000a694 _RTA_dispatcher
-0000bc68 _RTA_fromHost
-0000bc84 _RTA_toHost
-0000a240 _RTDX_Buffer
-0000a64c _RTDX_Buffer_End
-0000a080 _RTDX_Buffer_Initialize
-0000a1c0 _RTDX_Buffer_Read
-0000a0e0 _RTDX_Buffer_ReadCB
-0000a140 _RTDX_Buffer_Size
-0000a648 _RTDX_Buffer_Start
-0000a1e0 _RTDX_Buffer_Write
-000097a0 _RTDX_Buffer_WriteCB
-0000a180 _RTDX_Final_RT_Monitor
-0000a000 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a220 _RTDX_Mask_IER
-00009de0 _RTDX_Mon_Queue
-000093a0 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a65c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bca0 _STS_A_TABBEG
-0000bcd0 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b4a4 _SWI_D_curfxn
-0000b494 _SWI_D_curmask
-0000b498 _SWI_D_curset
-0000b490 _SWI_D_execaddr
-0000b4ac _SWI_D_inswi
-0000b49c _SWI_D_lock
-0000b4a8 _SWI_D_rdybeg
-0000b48c _SWI_D_runaddr
-0000b48c _SWI_data
-00000e50 _SWI_post
-0000b480 _SYS
-0000b600 _SYS_PUTCBEG
-0000b7ff _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009334 _SYS_exitStack
-0000b5dc _SYS_exitStackPtr
-0000b5e0 _SYS_exitStackTop
-0000bd6c _TRC_R_mask
-0000b5d0 _TSK
-000091d4 _TSK_ATTRS
-000091f0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000aa20 _TSK_init
-0000b5c8 _TSK_nTasks
-0000b5cc _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-00009210 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b488 __HOOK_NUMHOOKS
-0000b484 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090f4 __IRQ_dispatchTable
-00009030 __IRQ_eventTable
-00006740 __IRQ_hookFetchPacket
-000090b4 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00009304 __MCBSP_hDev0
-00009308 __MCBSP_hDev1
-000092ac __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009284 __TSK_mutex
-00009378 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006600 ___add_dtor
-00008e80 ___atexit_func_id__
-ffffffff ___binit__
-0000b2c0 ___bss__
-ffffffff ___c_args__
-00006760 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5fe ___end__
-00006760 ___etext__
-0000bd5c ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009370 __cleanup_ptr
-000043c0 __divf
-00009374 __dtors_ptr
-000062a0 __frcmpyf_div
-0000937c __lock
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-0000aec0 __stack
-00005d40 __strasgi
-00009380 __unlock
-000061a0 _atexit
-00007eb8 _b
-0000a960 _c_int00
-00005e80 _call_dtors
-0000938c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-000054a0 _memcpy
-000063fc _mono_read_16Bit
-000063d4 _mono_write_16Bit
-000050e0 _non_circ_fir
-0000b5c0 _rtdxNullChanCnt
-0000b5c4 _rtdxNullFuncCnt
-0000a650 _rtdx_buffer_state
-0000a670 _rtdx_mon_state
-000063a8 _stereo_read_16Bit
-00006380 _stereo_write_16Bit
-00005a40 _wait500nS
-00008690 _x
-ffffffff binit
-00006760 cinit
-00000000 edata
-0000b5fe end
-00006760 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd5c pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050e0 _non_circ_fir
-000051c0 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-000054a0 _memcpy
-000056e0 _IRQ_map
-000058a0 _MCBSP_reset
-00005a40 _wait500nS
-00005a68 GBL_USERINITFXN
-00005a68 _GBL_setPLLto225MHz
-00005bc0 _DSK6713_AIC23_rset
-00005c88 _DSK6713_AIC23_rget
-00005cac _DSK6713_AIC23_config
-00005d40 __strasgi
-00005e80 _call_dtors
-00005fa0 _MCBSP_open
-000060a0 _MCBSP_start
-000061a0 _atexit
-000062a0 __frcmpyf_div
-00006380 _stereo_write_16Bit
-000063a8 _stereo_read_16Bit
-000063d4 _mono_write_16Bit
-000063fc _mono_read_16Bit
-000065c0 _IRQ_enable
-00006600 ___add_dtor
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000066c0 _IRQ_nmiEnable
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-00006740 __IRQ_hookFetchPacket
-00006760 ___cinit__
-00006760 ___etext__
-00006760 cinit
-00006760 etext
-00007eb8 _b
-00008690 _x
-00008e58 _Config
-00008e80 ___atexit_func_id__
-00009030 __IRQ_eventTable
-000090b4 __IRQ_intTable
-000090f4 __IRQ_dispatchTable
-000090fc _KNL_queues
-0000919c _KNL_dummy
-000091d4 _TSK_ATTRS
-000091f0 _TSK_config
-00009210 _TSK_timerSem
-00009230 _OBJ_table
-00009268 _OBJ_segtab
-00009284 __TSK_mutex
-000092ac __MEM_mutex
-00009304 __MCBSP_hDev0
-00009308 __MCBSP_hDev1
-00009334 _SYS_exitStack
-00009370 __cleanup_ptr
-00009374 __dtors_ptr
-00009378 ___TI_enable_exit_profile_output
-0000937c __lock
-00009380 __unlock
-0000938c _dtors
-00009390 RTA_fromHost$buf
-000093a0 _RTDX_Poll
-000097a0 _RTDX_Buffer_WriteCB
-00009de0 _RTDX_Mon_Queue
-0000a000 _RTDX_Init_RT_Monitor
-0000a080 _RTDX_Buffer_Initialize
-0000a0e0 _RTDX_Buffer_ReadCB
-0000a140 _RTDX_Buffer_Size
-0000a180 _RTDX_Final_RT_Monitor
-0000a1c0 _RTDX_Buffer_Read
-0000a1e0 _RTDX_Buffer_Write
-0000a220 _RTDX_Mask_IER
-0000a240 _RTDX_Buffer
-0000a648 _RTDX_Buffer_Start
-0000a64c _RTDX_Buffer_End
-0000a650 _rtdx_buffer_state
-0000a65c _RTDX_writing
-0000a670 _rtdx_mon_state
-0000a68c IDL_A_TABBEG
-0000a68c IDL_cpuLoad
-0000a68c _IDL_cpuLoad
-0000a690 LNK_dataPump
-0000a690 _LNK_dataPump
-0000a694 RTA_dispatcher
-0000a694 _RTA_dispatcher
-0000a698 IDL_END
-0000a6a0 BIOS_init
-0000a6a0 _BIOS_init
-0000a804 BIOS$$CLKON
-0000a844 BIOS$$CLKOFF
-0000a8ac BIOS_start
-0000a8ac _BIOS_start
-0000a960 _c_int00
-0000aa20 _TSK_init
-0000aaa0 _OBJ_init
-0000aac0 TSK_idle$stack
-0000ae58 TSK_idle$stkptr
-0000aec0 GBL_stackbeg
-0000aec0 _HWI_STKTOP
-0000aec0 __stack
-0000b2b8 _HWI_STKBOTTOM
-0000b2bf GBL_stackend
-0000b2c0 $bss
-0000b2c0 .bss
-0000b2c0 _HWI_dispatchTab
-0000b2c0 ___bss__
-0000b3c0 IDL_D_tabbeg
-0000b3c4 IDL_D_calibrate
-0000b3c8 IDL_D_calbeg
-0000b3cc LOG_D_system
-0000b3cc _LOG_D_system
-0000b3d0 PIP_D_tabbeg
-0000b3d4 PIP_D_tablen
-0000b3d8 CLK_R_time
-0000b3dc CLK_D_timefxn
-0000b3e0 CLK_D_tabbeg
-0000b3e4 CLK_D_isrhook
-0000b3e8 CLK_D_idletime
-0000b3ec _CLK_htimeDiv
-0000b3f0 _CLK_htimeMult
-0000b3f4 _CLK_ltimeDiv
-0000b3f8 _CLK_ltimeMult
-0000b3fc _CLK_D_dirty
-0000b400 _CLK_D_prd
-0000b404 _CLK_D_tddr
-0000b408 _CLK_D_countspms
-0000b40c PRD_D_tick
-0000b40c _PRD_D_tick
-0000b410 PRD_D_cur
-0000b414 PRD_D_elapsed
-0000b418 PRD_D_prevtim
-0000b41c PRD_D_scalar
-0000b420 PRD_D_swihandle
-0000b424 PRD_D_tabbeg
-0000b428 PRD_D_tablen
-0000b42c PRD_D_thook
-0000b430 RTA_D_fromHost
-0000b434 RTA_D_toHost
-0000b438 RTA_D_logval
-0000b448 RTA_D_stsval
-0000b454 HST_D_chanmask
-0000b458 HST_D_tabbeg
-0000b45c HST_D_tabend
-0000b460 _GBL_procId
-0000b464 _GBL_clkIn
-0000b468 _GBL_freq
-0000b46c _MEM_D_NUMSEGMENTS
-0000b470 _MEM_D_memtab
-0000b474 _MEM_D_freelist
-0000b478 _MEM_D_lockaddr
-0000b47c _MEM_D_unlockaddr
-0000b480 _SYS
-0000b484 __HOOK_knlId
-0000b488 __HOOK_NUMHOOKS
-0000b48c SWI_D_runaddr
-0000b48c _SWI_D_runaddr
-0000b48c _SWI_data
-0000b490 SWI_D_execaddr
-0000b490 _SWI_D_execaddr
-0000b494 SWI_D_curmask
-0000b494 _SWI_D_curmask
-0000b498 SWI_D_curset
-0000b498 _SWI_D_curset
-0000b49c SWI_D_lock
-0000b49c _SWI_D_lock
-0000b4a0 SWI_D_curmbox
-0000b4a4 SWI_D_curfxn
-0000b4a4 _SWI_D_curfxn
-0000b4a8 SWI_D_rdybeg
-0000b4a8 _SWI_D_rdybeg
-0000b4ac SWI_D_inswi
-0000b4ac _SWI_D_inswi
-0000b4b0 SWI_D_rdytab
-0000b528 _KNL_wFlag
-0000b52c _KNL_wList
-0000b530 _KNL_alarm
-0000b534 _KNL_setpri
-0000b538 _KNL_inactive
-0000b53c _KNL_priority
-0000b540 _KNL_set
-0000b544 _KNL_curtask
-0000b548 _KNL_prevtask
-0000b54c _KNL_curtime
-0000b550 _KNL_swiptr
-0000b554 _KNL_curqueue
-0000b558 _KNL_maxqueue
-0000b55c _KNL_tswitchfxn
-0000b560 _KNL_tcreatefxn
-0000b564 _KNL_tdeletefxn
-0000b568 _KNL_treadyfxn
-0000b56c _KNL_idlefxn
-0000b570 HWI_D_spsave
-0000b570 _HWI_D_spsave
-0000b570 _HWI_data
-0000b57c _HWI_D_inhwi
-0000b580 HWI_D_bss
-0000b584 HWI_D_ccmask
-0000b588 RTA_fromHost$pipe$dtab
-0000b594 RTA_toHost$pipe$dtab
-0000b5a0 LNK_dspFrameRequestMask
-0000b5a0 _LNK_dspFrameRequestMask
-0000b5a4 LNK_dspFrameReadyMask
-0000b5a4 _LNK_dspFrameReadyMask
-0000b5a8 LNK_readPend
-0000b5a8 _LNK_readPend
-0000b5ac LNK_readDone
-0000b5ac _LNK_readDone
-0000b5b0 LNK_readFail
-0000b5b0 _LNK_readFail
-0000b5b4 LNK_writeFail
-0000b5b4 _LNK_writeFail
-0000b5c0 _rtdxNullChanCnt
-0000b5c4 _rtdxNullFuncCnt
-0000b5c8 _TSK_nTasks
-0000b5cc _TSK_pid
-0000b5d0 _TSK
-0000b5d4 _CLK_DFLTMICROSECS
-0000b5d8 _CLK_D_microseconds
-0000b5dc _SYS_exitStackPtr
-0000b5e0 _SYS_exitStackTop
-0000b5e4 _DSK6713_AIC23_codeccontrolhandle
-0000b5e8 _DSK6713_AIC23_codecdatahandle
-0000b5ec _CLK_htimePerLtime
-0000b5f4 IDL_D_busyObj
-0000b5f8 _H_Codec
-0000b5fc _DSK6713_version
-0000b5fe ___end__
-0000b5fe end
-0000b600 _SYS_PUTCBEG
-0000b7ff _SYS_PUTCEND
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc64 HST_A_TABBEG
-0000bc64 _HST_A_TABBEG
-0000bc68 RTA_fromHost
-0000bc68 _RTA_fromHost
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000bc84 _RTA_toHost
-0000bc8c RTA_toHost$rtdx
-0000bca0 HST_A_TABEND
-0000bca0 KNL_swi$sts$stsobj
-0000bca0 STS_A_TABBEG
-0000bca0 _HST_A_TABEND
-0000bca0 _STS_A_TABBEG
-0000bca4 KNL_swi$sts
-0000bcb0 TSK_idle$sts$stsobj
-0000bcb4 TSK_idle$sts
-0000bcc0 IDL_busyObj$stsobj
-0000bcc4 IDL_busyObj
-0000bcc4 _IDL_busyObj
-0000bcd0 KNL_swi
-0000bcd0 STS_A_TABEND
-0000bcd0 SWI_A_TABBEG
-0000bcd0 _KNL_swi
-0000bcd0 _STS_A_TABEND
-0000bcfc SWI_A_TABEND
-0000bd24 LOG_A_TABBEG
-0000bd24 LOG_system
-0000bd24 _LOG_A_TABBEG
-0000bd24 _LOG_system
-0000bd3c IDL_A_CALBEG
-0000bd3c IDL_cpuLoad$
-0000bd3c LOG_A_TABEND
-0000bd3c _LOG_A_TABEND
-0000bd40 LNK_dataPump$
-0000bd44 RTA_dispatcher$
-0000bd48 IDL_END$
-0000bd4c SYS$config
-0000bd5c ___pinit__
-0000bd5c pinit
-0000bd68 TRC_cinit
-0000bd6c TRC_R_mask
-0000bd6c _TRC_R_mask
-0000bd70 GBL_initdone
-0000bd74 CLK_A_TABBEG
-0000bd74 PRD_clock
-0000bd74 _PRD_clock
-0000bd78 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[717 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/803d7e79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/803d7e79cd0100181ce89bcacea45786
deleted file mode 100644
index 131cf32..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/803d7e79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,14 +0,0 @@
-utils.loadPlatform("ti.platforms.dsk6713");
-
-/* The following DSP/BIOS Features are enabled. */
-bios.enableRealTimeAnalysis(prog);
-bios.enableRtdx(prog);
-bios.enableTskManager(prog);
-
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive");
-bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC");
-bios.HWI.instance("HWI_INT4").useDispatcher = 1;
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit");
-// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
-
-prog.gen();
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/c0e7007add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/c0e7007add0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/61/c0e7007add0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/50befd98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/50befd98d80100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/50befd98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/a09e5355d70100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/a09e5355d70100181ce89bcacea45786
deleted file mode 100644
index 3c4ba02..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/a09e5355d70100181ce89bcacea45786
+++ /dev/null
@@ -1,173 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-
-// Table size
-#define SINE_TABLE_SIZE 256
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
-
-/* Sampling frequency in HZ. Must only be set to 8000, 16000, 24000
-32000, 44100 (CD standard), 48000 or 96000 */
-int sampling_freq = 8000;
-
-/* Use this variable in your code to set the frequency of your sine wave
- be carefull that you do not set it above the current nyquist frequency! */
-float sine_freq = 1000.0;
-
-// Declares the global sine table that will be used to generate the sine wave
-float table[SINE_TABLE_SIZE];
-
-// Current index in the table, that can be used to calculate the next index
-int sine_index = 0;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-float sinegen(void);
-void ISR_AIC(void);
-void sine_init(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- // initialize the sine wave
- sine_init();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_XINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_XINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-// populates the table with appropriate sine values
-void sine_init()
-{
- int i;
- for(i = 0; i < SINE_TABLE_SIZE; i++)
- {
- table[i] = sin(2 * PI * i / SINE_TABLE_SIZE);
- }
-}
-
-// returns the sample according to the sampling frequency
-float sinegen()
-{
- unsigned sample_index = sine_index * sine_freq * SINE_TABLE_SIZE / sampling_freq;
- sample_index %= SINE_TABLE_SIZE;
- sine_index++;
- return table[sample_index];
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- // temporary variable used to output values from function
- float wave_out, wave;
-
- wave = sinegen();
- wave_out = wave < 0 ? wave : -wave;
-
- mono_write_16Bit((short)(wave_out*32767));
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/b07cc7d3d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/b07cc7d3d80100181ce89bcacea45786
deleted file mode 100644
index e63485b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/62/b07cc7d3d80100181ce89bcacea45786
+++ /dev/null
@@ -1,131 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- mono_write_16Bit((short)(wave_out*32767));
- mono_write_16Bit((short)(wave_out*32767));
-
-
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/2008ebf244070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/2008ebf244070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/2008ebf244070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/50c82b7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/50c82b7add0100181ce89bcacea45786
deleted file mode 100644
index 548cd0b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/50c82b7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 14:38:35 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b08ff46bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b08ff46bdd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b08ff46bdd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b0c7870d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b0c7870d7606001814daa3a49c232c18
deleted file mode 100644
index ca2b66a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/b0c7870d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Wed Jan 31 10:59:40 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/d015880d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/d015880d7606001814daa3a49c232c18
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/63/d015880d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/7075724c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/7075724c7506001814daa3a49c232c18
deleted file mode 100644
index f7a63a2..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/7075724c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Wed Jan 31 10:54:49 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/e0ad63d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/e0ad63d57506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/64/e0ad63d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/2094550d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/2094550d7606001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/2094550d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/700f0a8f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/700f0a8f41070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/65/700f0a8f41070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/b0b27e79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/b0b27e79cd0100181ce89bcacea45786
deleted file mode 100644
index 3a02123..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/b0b27e79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* MODULE PARAMETERS */
--u _GBL_setPLLto225MHz
-GBL_USERINITFXN = _GBL_setPLLto225MHz;
-
--u MEM_NULL
-MEM_SEGZERO = MEM_NULL;
--u MEM_NULL
-MEM_MALLOCSEG = MEM_NULL;
-
--u CLK_F_getshtime
-CLK_TIMEFXN = CLK_F_getshtime;
--u HWI_F_dispatch
-CLK_HOOKFXN = HWI_F_dispatch;
-
--u _KNL_tick
-PRD_THOOKFXN = _KNL_tick;
-
--u IRAM
-RTDX_DATAMEMSEG = IRAM;
-
--u IRAM
-HST_DSMBUFSEG = IRAM;
-
--u GBL_NULL
-SWI_EHOOKFXN = GBL_NULL;
--u GBL_NULL
-SWI_IHOOKFXN = GBL_NULL;
--u SWI_F_exec
-SWI_EXECFXN = SWI_F_exec;
--u SWI_F_run
-SWI_RUNFXN = SWI_F_run;
-
--u MEM_NULL
-TSK_STACKSEG = MEM_NULL;
--u _FXN_F_nop
-TSK_VCREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VDELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VEXITFXN = _FXN_F_nop;
-
--u IDL_F_stub
-IDL_CALIBRFXN = IDL_F_stub;
-
--u _UTL_doAbort
-SYS_ABORTFXN = _UTL_doAbort;
--u _UTL_doError
-SYS_ERRORFXN = _UTL_doError;
--u _UTL_halt
-SYS_EXITFXN = _UTL_halt;
--u _UTL_doPutc
-SYS_PUTCFXN = _UTL_doPutc;
-
--u _FXN_F_nop
-GIO_CREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_DELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_PENDFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_POSTFXN = _FXN_F_nop;
-
-/* OBJECT ALIASES */
-_SDRAM = SDRAM;
-_IRAM = IRAM;
-_PRD_clock = PRD_clock;
-_RTA_fromHost = RTA_fromHost;
-_RTA_toHost = RTA_toHost;
-_HWI_RESET = HWI_RESET;
-_HWI_NMI = HWI_NMI;
-_HWI_RESERVED0 = HWI_RESERVED0;
-_HWI_RESERVED1 = HWI_RESERVED1;
-_HWI_INT4 = HWI_INT4;
-_HWI_INT5 = HWI_INT5;
-_HWI_INT6 = HWI_INT6;
-_HWI_INT7 = HWI_INT7;
-_HWI_INT8 = HWI_INT8;
-_HWI_INT9 = HWI_INT9;
-_HWI_INT10 = HWI_INT10;
-_HWI_INT11 = HWI_INT11;
-_HWI_INT12 = HWI_INT12;
-_HWI_INT13 = HWI_INT13;
-_HWI_INT14 = HWI_INT14;
-_HWI_INT15 = HWI_INT15;
-_KNL_swi = KNL_swi;
-_TSK_idle = TSK_idle;
-_IDL_cpuLoad = IDL_cpuLoad;
-_LNK_dataPump = LNK_dataPump;
-_RTA_dispatcher = RTA_dispatcher;
-_LOG_system = LOG_system;
-_IDL_busyObj = IDL_busyObj;
-
-/* MODULE GBL */
-
-SECTIONS {
- .vers (COPY): {} /* version information */
-}
-
--priority
---trampolines
--llnkrtdx.a67
--ldrivers.a67 /* device drivers support */
--lsioboth.a67 /* supports both SIO models */
--lbiosC6000.a67 /* BIOS clock specific library */
--lbios6x1x.a67 /* BIOS c6x1x specific library */
--lbios.a67 /* DSP/BIOS support */
--lrtdx.lib /* RTDX support */
--lrts6700.lib /* C and C++ run-time library support */
-
-_GBL_CACHE = GBL_CACHE;
-
-/* MODULE MEM */
--stack 0x400
-MEMORY {
- SDRAM : origin = 0x80000000, len = 0x800000
- IRAM : origin = 0x0, len = 0x40000
-}
-/* MODULE CLK */
-SECTIONS {
- .clk: {
-
- CLK_F_gethtime = CLK_F_getshtime;
- *(.clk)
- } > IRAM, RUN_START(CLK_A_TABBEG)
-}
-_CLK_PRD = CLK_PRD;
-_CLK_COUNTSPMS = CLK_COUNTSPMS;
-_CLK_REGS = CLK_REGS;
-_CLK_USETIMER = CLK_USETIMER;
-_CLK_TIMERNUM = CLK_TIMERNUM;
-_CLK_TDDR = CLK_TDDR;
-
-/* MODULE PRD */
-SECTIONS {
- .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {
- } > IRAM
-}
-PRD_A_TABLEN = 0;
-
-/* MODULE RTDX */
-_RTDX_interrupt_mask = 0x0;
-
-/* MODULE HST */
-_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask;
-_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask;
-_LNK_readDone = LNK_readDone;
-_LNK_readFail = LNK_readFail;
-_LNK_readPend = LNK_readPend;
-_LNK_writeFail = LNK_writeFail;
-/* MODULE HWI */
-SECTIONS {
- .hwi_vec: 0x0 {
- HWI_A_VECS = .;
- *(.hwi_vec)
- }
-}
-
-_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;
-
-/* MODULE SWI */
-SECTIONS {
- .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {
- } > IRAM
-}
-SWI_A_TABLEN = 1;
-
-/* MODULE TSK */
-SECTIONS {
- .tsk: {
- *(.tsk)
- } > IRAM
-}
-
-/* MODULE IDL */
-SECTIONS {
- .idl: {
- *(.idl)
- } > IRAM, RUN_START(IDL_A_TABBEG)
-
- .idlcal: {
- *(.idlcal)
- } > IRAM, RUN_START(IDL_A_CALBEG)
-}
-
-
-LOG_A_TABLEN = 1; _LOG_A_TABLEN = 1;
-
-PIP_A_TABLEN = 2;
-
-
-SECTIONS {
- .bss: {} > IRAM
-
- .far: {} > IRAM
-
- .sysdata: {} > IRAM
-
- .dsm: {} > IRAM
-
- frt: {} > IRAM
-
- .mem: {} > IRAM
-
- .bios: {} > IRAM
-
- .cio: {} > IRAM
-
- .data: {} > IRAM
-
- .gio: {} > IRAM
-
- .pinit: {} > IRAM
-
- .sys: {} > IRAM
-
- .sysregs: {} > IRAM
-
- .text: {} > IRAM
-
- .cinit: {} > IRAM
-
- .switch: {} > IRAM
-
- .gblinit: {} > IRAM
-
- .sysinit: {} > IRAM
-
- .trcdata: {} > IRAM
-
- .hwi: {} > IRAM
-
- .rtdx_data: {} > IRAM
-
- .rtdx_text: {} > IRAM
-
- .TSK_idle$stk: {
- *(.TSK_idle$stk)
- } > IRAM
-
- /* LOG_system buffer */
- .LOG_system$buf: align = 0x100 {} > IRAM
-
- /* RTA_fromHost buffer */
- .hst1: align = 0x4 {} > IRAM
-
- /* RTA_toHost buffer */
- .hst0: align = 0x4 {} > IRAM
-
- GROUP {
- .const: align = 0x8 {}
- .printf (COPY): {}
- } > IRAM
-
- .args: align=4 fill=0 {
- *(.args)
- . += 0x4;
- } > IRAM
-
- .trace: fill = 0x0 align = 0x4 {
- _SYS_PUTCBEG = .;
- . += 0x200;
- _SYS_PUTCEND = . - 1;
- } > IRAM
-
- .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) {
- } > IRAM
-
- .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) {
- } > IRAM
-
- .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) {
- } > IRAM
-
- .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) {
- } > IRAM
-
- .stack: align = 0x8 {
- GBL_stackbeg = .;
- *(.stack)
- GBL_stackend = GBL_stackbeg + 0x400 - 1;
- _HWI_STKBOTTOM = GBL_stackbeg + 0x400 - 8;
- _HWI_STKTOP = GBL_stackbeg;
- } > IRAM
-
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/f097b8cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/f097b8cc7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/66/f097b8cc7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/a02ac1f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/a02ac1f041070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/a02ac1f041070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/f019da3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/f019da3a45070018153483e962c7925e
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/67/f019da3a45070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/304a744c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/304a744c7506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/304a744c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/a05719167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/a05719167506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/68/a05719167506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/307e152ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/307e152ee10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/307e152ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/40cfd1c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/40cfd1c9e10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/40cfd1c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/50635e5cdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/50635e5cdd0100181ce89bcacea45786
deleted file mode 100644
index 0ce978d..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/50635e5cdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,165 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {-
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y*32767;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e094a8277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e094a8277506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e094a8277506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e0ba82cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e0ba82cc7506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/69/e0ba82cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6b/f07ee824610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6b/f07ee824610b001815de8ca47440e6f8
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6b/f07ee824610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/50cc152ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/50cc152ee10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/50cc152ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/e0ba142ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/e0ba142ee10100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6d/e0ba142ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/80f640ba7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/80f640ba7506001814daa3a49c232c18
deleted file mode 100644
index 9992d4a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/80f640ba7506001814daa3a49c232c18
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- ptr--;
- if (ptr == 0)
- ptr = N-1;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/f040ddc9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/f040ddc9e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6e/f040ddc9e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/601fe724610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/601fe724610b001815de8ca47440e6f8
deleted file mode 100644
index 2e74b0e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/601fe724610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Feb 01 11:44:16 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/90ec078f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/90ec078f41070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/90ec078f41070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/e0f296d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/e0f296d57506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/e0f296d57506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f0f48d79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f0f48d79cd0100181ce89bcacea45786
deleted file mode 100644
index 9fa20e7..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/6f/f0f48d79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>RTDSP</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature>
- <nature>org.eclipse.cdt.core.cnature</nature>
- <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
- <nature>org.eclipse.cdt.core.ccnature</nature>
- <nature>com.ti.ccstudio.managedbuild.core.ccsNature</nature>
- </natures>
-</projectDescription>
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/9027ba173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/9027ba173f070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/9027ba173f070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0518fd57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0518fd57506001814daa3a49c232c18
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7/c0518fd57506001814daa3a49c232c18
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/70/90ea890d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/70/90ea890d7606001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/70/90ea890d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/100a484c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/100a484c7506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/100a484c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/40b5a555e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/40b5a555e20100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/71/40b5a555e20100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/72/806f69173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/72/806f69173f070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/72/806f69173f070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/30e520f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/30e520f344070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/30e520f344070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/70a39b367506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/70a39b367506001814daa3a49c232c18
deleted file mode 100644
index 767533f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/73/70a39b367506001814daa3a49c232c18
+++ /dev/null
@@ -1,154 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1;
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/74/2010cfc9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/74/2010cfc9e10100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/74/2010cfc9e10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/00958211e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/00958211e10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/00958211e10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/3070fd98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/3070fd98d80100181ce89bcacea45786
deleted file mode 100644
index cf7edbe..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/3070fd98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Tue Jan 23 11:15:03 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iEventId :: 14
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/6038b7cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/6038b7cc7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/6038b7cc7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/90ecbe50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/90ecbe50dd0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/90ecbe50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/d01f8211e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/d01f8211e10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/75/d01f8211e10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/20cc10167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/20cc10167506001814daa3a49c232c18
deleted file mode 100644
index a1336aa..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/20cc10167506001814daa3a49c232c18
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:39:14 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50a1f643610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50a1f643610b001815de8ca47440e6f8
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50a1f643610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50f6bdf041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50f6bdf041070018153483e962c7925e
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/50f6bdf041070018153483e962c7925e
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/7011ef6bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/7011ef6bdd0100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/76/7011ef6bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/20e38211e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/20e38211e10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/20e38211e10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/6064d83ed90100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/6064d83ed90100181ce89bcacea45786
deleted file mode 100644
index d22d3b4..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/6064d83ed90100181ce89bcacea45786
+++ /dev/null
@@ -1,146 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-
-short non_circ_fir()
-{
-
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/e05d16f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/e05d16f344070018153483e962c7925e
deleted file mode 100644
index cfed2e4..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/77/e05d16f344070018153483e962c7925e
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Feb 01 11:20:43 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/79/401a11167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/79/401a11167506001814daa3a49c232c18
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/79/401a11167506001814daa3a49c232c18
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7a/f07ee62de10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7a/f07ee62de10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7a/f07ee62de10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/204a64d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/204a64d57506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/204a64d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/d034bd173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/d034bd173f070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7b/d034bd173f070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/30febe117506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/30febe117506001814daa3a49c232c18
deleted file mode 100644
index 2b01ae5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/30febe117506001814daa3a49c232c18
+++ /dev/null
@@ -1,157 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/704646e97406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/704646e97406001814daa3a49c232c18
deleted file mode 100644
index a50473e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7c/704646e97406001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7d/20d9880d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7d/20d9880d7606001814daa3a49c232c18
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7d/20d9880d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/6051fb2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/6051fb2ddf0100181ce89bcacea45786
deleted file mode 100644
index 9fde53b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/6051fb2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 14:38:59 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/70e18ff041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/70e18ff041070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/70e18ff041070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/b06f28487506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/b06f28487506001814daa3a49c232c18
deleted file mode 100644
index e978ab1..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/7e/b06f28487506001814daa3a49c232c18
+++ /dev/null
@@ -1,154 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- ptr--;
- if (ptr == 0)
- ptr = N-1;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/206abb50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/206abb50dd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/206abb50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/60248a79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/60248a79cd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/60248a79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/700f9479cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/700f9479cd0100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8/700f9479cd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/504e890d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/504e890d7606001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/504e890d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/80b58ed57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/80b58ed57506001814daa3a49c232c18
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/80/80b58ed57506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/50b88350dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/50b88350dd0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/50b88350dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/a086ef6bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/a086ef6bdd0100181ce89bcacea45786
deleted file mode 100644
index 589700a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/81/a086ef6bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 14:37:49 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/101590d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/101590d57506001814daa3a49c232c18
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/101590d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/308e8616dc0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/308e8616dc0100181ce89bcacea45786
deleted file mode 100644
index cde2b89..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/308e8616dc0100181ce89bcacea45786
+++ /dev/null
@@ -1,147 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-
-short non_circ_fir()
-{
- int i;
-
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/501aef55e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/501aef55e20100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/501aef55e20100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/90df7b277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/90df7b277506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/82/90df7b277506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2026fd2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2026fd2ddf0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2026fd2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2081d1c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2081d1c9e10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/2081d1c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/407a900d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/407a900d7606001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/84/407a900d7606001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/10808c11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/10808c11e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/10808c11e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/30e1b1cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/30e1b1cc7506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/30e1b1cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/d06da8277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/d06da8277506001814daa3a49c232c18
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/d06da8277506001814daa3a49c232c18
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/f0e25e0d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/f0e25e0d7606001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/85/f0e25e0d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/204a8b0d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/204a8b0d7606001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/204a8b0d7606001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/b0550f3f7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/b0550f3f7506001814daa3a49c232c18
deleted file mode 100644
index dc48c7d..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/b0550f3f7506001814daa3a49c232c18
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
- ptr--;
- if (ptr < 0)
- ptr = N-1;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/d0789dc9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/d0789dc9e10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/86/d0789dc9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/10d1bd173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/10d1bd173f070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/10d1bd173f070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/a0450899d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/a0450899d80100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/a0450899d80100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0adde3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0adde3a45070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/87/d0adde3a45070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/88/b05c5d2bd90100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/88/b05c5d2bd90100181ce89bcacea45786
deleted file mode 100644
index d22d3b4..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/88/b05c5d2bd90100181ce89bcacea45786
+++ /dev/null
@@ -1,146 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-
-short non_circ_fir()
-{
-
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/20a68479cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/20a68479cd0100181ce89bcacea45786
deleted file mode 100644
index f13e3eb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/20a68479cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header File */
-#include "dsp_bios_cfg.h"
-
-/* Config Structures */
-/* Handles */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/60b38779cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/60b38779cd0100181ce89bcacea45786
deleted file mode 100644
index 1cd3e3e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/60b38779cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,1091 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "Thu Jan 18 13:48:06 2018", VERS$DATE
-
-;; PROLOGUE
- .include dsp_bios_cfg.h62
- .copy confbeg.s62
-
-;; TYPE HEADERS
- .include gbl.h62
- .include mem.h62
- .include obj.h62
- .include buf.h62
- .include pool.h62
- .include clk.h62
- .include prd.h62
- .include rtdx.h62
- .include hst.h62
- .include hwi.h62
- .include swi.h62
- .include tsk.h62
- .include idl.h62
- .include isrc.h62
- .include log.h62
- .include pip.h62
- .include sem.h62
- .include mbx.h62
- .include que.h62
- .include lck.h62
- .include sts.h62
- .include sys.h62
- .include sio.h62
- .include gio.h62
- .include dev.h62
- .include udev.h62
- .include dio.h62
- .include dgn.h62
- .include dhl.h62
- .include dpi.h62
- .include msgq.h62
- .include hook.h62
-
-;; TYPE ATTRIBUTES
-MEM$NUMOF .set 2
-MEM$SETOF .set 00H
-OBJ$NUMOF .set 0
-OBJ$SETOF .set 00H
-BUF$NUMOF .set 0
-BUF$SETOF .set 00H
-CLK$NUMOF .set 1
-CLK$SETOF .set 00H
-PRD$NUMOF .set 0
-PRD$SETOF .set 00H
-RTDX$NUMOF .set 0
-RTDX$SETOF .set 00H
-HST$NUMOF .set 2
-HST$SETOF .set 03H
-HWI$NUMOF .set 16
-HWI$SETOF .set 0ffffH
-SWI$NUMOF .set 1
-SWI$SETOF .set 00H
-TSK$NUMOF .set 1
-TSK$SETOF .set 00H
-IDL$NUMOF .set 3
-IDL$SETOF .set 00H
-ISRC$NUMOF .set 0
-ISRC$SETOF .set 00H
-LOG$NUMOF .set 1
-LOG$SETOF .set 00H
-PIP$NUMOF .set 0
-PIP$SETOF .set 00H
-SEM$NUMOF .set 0
-SEM$SETOF .set 00H
-MBX$NUMOF .set 0
-MBX$SETOF .set 00H
-QUE$NUMOF .set 0
-QUE$SETOF .set 00H
-LCK$NUMOF .set 0
-LCK$SETOF .set 00H
-STS$NUMOF .set 1
-STS$SETOF .set 00H
-SIO$NUMOF .set 0
-SIO$SETOF .set 00H
-DEV$NUMOF .set 0
-DEV$SETOF .set 00H
-UDEV$NUMOF .set 0
-UDEV$SETOF .set 00H
-DIO$NUMOF .set 0
-DIO$SETOF .set 00H
-DGN$NUMOF .set 0
-DGN$SETOF .set 00H
-DHL$NUMOF .set 0
-DHL$SETOF .set 00H
-DPI$NUMOF .set 0
-DPI$SETOF .set 00H
-HOOK$NUMOF .set 0
-HOOK$SETOF .set 00H
-
-;; module GBL (ROM, PROCID, CLKIN, FREQ, DSPTYPE, DSPSUBTYPE, CLKTYPE, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC)
- .global GBL$ ; == 1
- .global GBL_ROM ; dsp_bios_cfg.h62
- .global GBL_PROCID ; dsp_bios_cfg.h62
- .global GBL_CLKIN ; dsp_bios_cfg.h62
- .global GBL_FREQ ; dsp_bios_cfg.h62
- .global GBL_DSPTYPE ; dsp_bios_cfg.h62
- .global GBL_DSPSUBTYPE ; dsp_bios_cfg.h62
- .global GBL_CLKTYPE ; dsp_bios_cfg.h62
- .global GBL_BIGENDIAN ; dsp_bios_cfg.h62
- .global GBL_USERINIT ; dsp_bios_cfg.h62
- .global GBL_USERINITFXN ; dsp_bios_cfg.cmd
- .global GBL_ENABLEINST ; dsp_bios_cfg.h62
- .global GBL_CACHE ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGURE ; dsp_bios_cfg.h62
- .global GBL_L2MODE ; dsp_bios_cfg.h62
- .global GBL_L2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK ; dsp_bios_cfg.h62
- .global GBL_SUPPORTCSL ; dsp_bios_cfg.h62
- .global GBL_TRCMASKVALUE ; dsp_bios_cfg.h62
- .global GBL_CALLCSLCFGINIT ; dsp_bios_cfg.h62
- .global GBL_C641XL2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK1 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK2 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK3 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK4 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK5 ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGALLOC ; dsp_bios_cfg.h62
- .global GBL_L2ALLOC ; dsp_bios_cfg.h62
-
-;; module MEM (gNumHeap, SEGZERO, MALLOCSEG, USEMPC)
- .global MEM$ ; == 1
- .global MEM_gNumHeap ; dsp_bios_cfg.h62
- .global MEM_SEGZERO ; dsp_bios_cfg.cmd
- .global MEM_MALLOCSEG ; dsp_bios_cfg.cmd
- .global MEM_USEMPC ; dsp_bios_cfg.h62
-
-;; module OBJ ()
- .global OBJ$ ; == 0
-
-;; module BUF (ENABLED)
- .global BUF$ ; == 0
- .global BUF_ENABLED ; dsp_bios_cfg.h62
-
-;; module POOL (USEPOOL)
- .global POOL$ ; == 0
- .global POOL_USEPOOL ; dsp_bios_cfg.h62
-
-;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, MICROSECS, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN, CALDIV, CALMULT, HTIMEDIV, HTIMEMULT, LTIMEDIV, LTIMEMULT, HTIMEPERLTIME)
- .global CLK$ ; == 1
- .global CLK_INTBIT ; dsp_bios_cfg.h62
- .global CLK_REGS ; dsp_bios_cfg.h62
- .global CLK_TIMERNUM ; dsp_bios_cfg.h62
- .global CLK_USETIMER ; dsp_bios_cfg.h62
- .global CLK_MICROSECS ; dsp_bios_cfg.h62
- .global CLK_TCR ; dsp_bios_cfg.h62
- .global CLK_TDDR ; dsp_bios_cfg.h62
- .global CLK_TDDRHIGH ; dsp_bios_cfg.h62
- .global CLK_PRD ; dsp_bios_cfg.h62
- .global CLK_PRDHIGH ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMS ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMSHIGH ; dsp_bios_cfg.h62
- .global CLK_TIMEFXN ; dsp_bios_cfg.cmd
- .global CLK_HOOKFXN ; dsp_bios_cfg.cmd
- .global CLK_CALDIV ; dsp_bios_cfg.h62
- .global CLK_CALMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_HTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_LTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_LTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEPERLTIME ; dsp_bios_cfg.h62
-
-;; module PRD (SCALAR, THOOKFXN)
- .global PRD$ ; == 1
- .global PRD_SCALAR ; dsp_bios_cfg.h62
- .global PRD_THOOKFXN ; dsp_bios_cfg.cmd
-
-;; module RTDX (USERTDX, USERTEXECUTION, RTDXTYPE, DATAMEMSEG, BUFMEMSIZE)
- .global RTDX$ ; == 1
- .global RTDX_USERTDX ; dsp_bios_cfg.h62
- .global RTDX_USERTEXECUTION ; dsp_bios_cfg.h62
- .global RTDX_RTDXTYPE ; dsp_bios_cfg.h62
- .global RTDX_DATAMEMSEG ; dsp_bios_cfg.cmd
- .global RTDX_BUFMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE)
- .global HST$ ; == 1
- .global HST_RTDX ; dsp_bios_cfg.h62
- .global HST_DSM ; dsp_bios_cfg.h62
- .global HST_NONE ; dsp_bios_cfg.h62
- .global HST_MAXFRAMESET ; dsp_bios_cfg.h62
- .global HST_MAXFRAMEALLOWED ; dsp_bios_cfg.h62
- .global HST_DSMBUFSEG ; dsp_bios_cfg.cmd
- .global HST_DSMMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH, CFGDISPATCHED)
- .global HWI$ ; == 1
- .global HWI_ZEROTAB ; dsp_bios_cfg.h62
- .global HWI_GENERATE_RESET_VEC ; dsp_bios_cfg.h62
- .global HWI_POLARITYMASK ; dsp_bios_cfg.h62
- .global HWI_INTRMULTLOW ; dsp_bios_cfg.h62
- .global HWI_INTRMULTHIGH ; dsp_bios_cfg.h62
- .global HWI_CFGDISPATCHED ; dsp_bios_cfg.h62
-
-;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN)
- .global SWI$ ; == 1
- .global SWI_EHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_IHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_EXECFXN ; dsp_bios_cfg.cmd
- .global SWI_RUNFXN ; dsp_bios_cfg.cmd
-
-;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS)
- .global TSK$ ; == 1
- .global TSK_STACKSIZE ; dsp_bios_cfg.h62
- .global TSK_STACKSEG ; dsp_bios_cfg.cmd
- .global TSK_PRIORITY ; dsp_bios_cfg.h62
- .global TSK_VCREATEFXN ; dsp_bios_cfg.cmd
- .global TSK_VDELETEFXN ; dsp_bios_cfg.cmd
- .global TSK_VEXITFXN ; dsp_bios_cfg.cmd
- .global TSK_SWITCHFXN ; dsp_bios_cfg.h62
- .global TSK_READYFXN ; dsp_bios_cfg.h62
- .global TSK_NUM_HOOKS ; dsp_bios_cfg.h62
-
-;; module IDL (USECLKIDLTIME, CALIBRFXN, CALIBRERROR)
- .global IDL$ ; == 1
- .global IDL_USECLKIDLTIME ; dsp_bios_cfg.h62
- .global IDL_CALIBRFXN ; dsp_bios_cfg.cmd
- .global IDL_CALIBRERROR ; dsp_bios_cfg.h62
-
-;; module ISRC ()
- .global ISRC$ ; == 1
-
-;; module LOG (ENABLED)
- .global LOG$ ; == 1
- .global LOG_ENABLED ; dsp_bios_cfg.h62
-
-;; module PIP (gNumEmbed, gNextId, OBJSIZE)
- .global PIP$ ; == 0
- .global PIP_gNumEmbed ; dsp_bios_cfg.h62
- .global PIP_gNextId ; dsp_bios_cfg.h62
- .global PIP_OBJSIZE ; dsp_bios_cfg.h62
-
-;; module SEM ()
- .global SEM$ ; == 0
-
-;; module MBX ()
- .global MBX$ ; == 0
-
-;; module QUE ()
- .global QUE$ ; == 1
-
-;; module LCK ()
- .global LCK$ ; == 1
-
-;; module STS ()
- .global STS$ ; == 1
-
-;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
- .global SYS$ ; == 1
- .global SYS_ABORTFXN ; dsp_bios_cfg.cmd
- .global SYS_ERRORFXN ; dsp_bios_cfg.cmd
- .global SYS_EXITFXN ; dsp_bios_cfg.cmd
- .global SYS_PUTCFXN ; dsp_bios_cfg.cmd
-
-;; module SIO ()
- .global SIO$ ; == 0
-
-;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN)
- .global GIO$ ; == 0
- .global GIO_CREATEFXN ; dsp_bios_cfg.cmd
- .global GIO_DELETEFXN ; dsp_bios_cfg.cmd
- .global GIO_PENDFXN ; dsp_bios_cfg.cmd
- .global GIO_POSTFXN ; dsp_bios_cfg.cmd
-
-;; module DEV ()
- .global DEV$ ; == 0
-
-;; module UDEV ()
- .global UDEV$ ; == 0
-
-;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE)
- .global DIO$ ; == 0
- .global DIO_STATIC ; dsp_bios_cfg.h62
- .global DIO_NUMTSKBASE ; dsp_bios_cfg.h62
- .global DIO_NUMSWIBASE ; dsp_bios_cfg.h62
-
-;; module DGN ()
- .global DGN$ ; == 0
-
-;; module DHL (gChannelsAvailable)
- .global DHL$ ; == 0
- .global DHL_gChannelsAvailable ; dsp_bios_cfg.h62
-
-;; module DPI ()
- .global DPI$ ; == 0
-
-;; module MSGQ (USEMSGQ)
- .global MSGQ$ ; == 0
- .global MSGQ_USEMSGQ ; dsp_bios_cfg.h62
-
-;; module HOOK (KNLID)
- .global HOOK$ ; == 0
- .global HOOK_KNLID ; dsp_bios_cfg.h62
-
-;; MODULE CONFIGURATION
-
-;; ======== GBL_config ========
- .asg 00H, _ROM
- .asg 00H, _PROCID
- .asg 04e20H, _CLKIN
- .asg 036ee8H, _FREQ
- .asg 03eH, _DSPTYPE
- .asg 01a39H, _DSPSUBTYPE
- .asg 01770H, _CLKTYPE
- .asg 00H, _BIGENDIAN
- .asg 01H, _USERINIT
- .asg _GBL_setPLLto225MHz, _USERINITFXN
- .asg 01H, _ENABLEINST
- .asg 00H, _CACHE
- .asg 01H, _L2CONFIGURE
- .asg 00H, _L2MODE
- .asg 00H, _L2PRIORITY
- .asg 01H, _L2MARMASK
- .asg 00H, _SUPPORTCSL
- .asg 0dbefH, _TRCMASKVALUE
- .asg 01H, _CALLCSLCFGINIT
- .asg 00H, _C641XL2PRIORITY
- .asg 00H, _L2MARMASK1
- .asg 00H, _L2MARMASK2
- .asg 00H, _L2MARMASK3
- .asg 00H, _L2MARMASK4
- .asg 00H, _L2MARMASK5
- .asg 00H, _L2CONFIGALLOC
- .asg 02226H, _L2ALLOC
- GBL_config _ROM, _PROCID, _CLKIN, _FREQ, _DSPTYPE, _DSPSUBTYPE, _CLKTYPE, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC
-
-;; ======== MEM_config ========
- .asg 00H, _gNumHeap
- .asg MEM_NULL, _SEGZERO
- .asg MEM_NULL, _MALLOCSEG
- .asg 00H, _USEMPC
- MEM_config _gNumHeap, _SEGZERO, _MALLOCSEG, _USEMPC
-
-;; ======== OBJ_config ========
- OBJ_config
-
-;; ======== BUF_config ========
- .asg 01H, _ENABLED
- BUF_config _ENABLED
-
-;; ======== POOL_config ========
- .asg 00H, _USEPOOL
- POOL_config _USEPOOL
-
-;; ======== CLK_config ========
- .asg 04000H, _INTBIT
- .asg 01940000H, _REGS
- .asg 00H, _TIMERNUM
- .asg 01H, _USETIMER
- .asg 03e8H, _MICROSECS
- .asg 020H, _TCR
- .asg 00H, _TDDR
- .asg 00H, _TDDRHIGH
- .asg 0dbbaH, _PRD
- .asg 00H, _PRDHIGH
- .asg 0dbbaH, _COUNTSPMS
- .asg 00H, _COUNTSPMSHIGH
- .asg CLK_F_getshtime, _TIMEFXN
- .asg HWI_F_dispatch, _HOOKFXN
- .asg 01H, _CALDIV
- .asg 04H, _CALMULT
- .asg 01H, _HTIMEDIV
- .asg 04H, _HTIMEMULT
- .asg 01H, _LTIMEDIV
- .asg 036ee8H, _LTIMEMULT
- .asg 0dbbaH, _HTIMEPERLTIME
- CLK_config _INTBIT, _REGS, _TIMERNUM, _USETIMER, _MICROSECS, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN, _CALDIV, _CALMULT, _HTIMEDIV, _HTIMEMULT, _LTIMEDIV, _LTIMEMULT, _HTIMEPERLTIME
-
-;; ======== PRD_config ========
- .asg 04000H, _SCALAR
- .asg _KNL_tick, _THOOKFXN
- PRD_config _SCALAR, _THOOKFXN
-
-;; ======== RTDX_config ========
- .asg 01H, _USERTDX
- .asg 00H, _USERTEXECUTION
- .asg "JTAG", _RTDXTYPE
- .asg IRAM, _DATAMEMSEG
- .asg 0408H, _BUFMEMSIZE
- RTDX_config _USERTDX, _USERTEXECUTION, _RTDXTYPE, _DATAMEMSEG, _BUFMEMSIZE
-
-;; ======== HST_config ========
- .asg 01H, _RTDX
- .asg 00H, _DSM
- .asg 00H, _NONE
- .asg 040H, _MAXFRAMESET
- .asg 0ffH, _MAXFRAMEALLOWED
- .asg IRAM, _DSMBUFSEG
- .asg 0400H, _DSMMEMSIZE
- HST_config _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE
-
-;; ======== HWI_config ========
- .asg 01H, _ZEROTAB
- .asg 00H, _GENERATE_RESET_VEC
- .asg 00H, _POLARITYMASK
- .asg 0310718aeH, _INTRMULTLOW
- .asg 082039a3H, _INTRMULTHIGH
- .asg 04018H, _CFGDISPATCHED
- HWI_config _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH, _CFGDISPATCHED
-
-;; ======== SWI_config ========
- .asg GBL_NULL, _EHOOKFXN
- .asg GBL_NULL, _IHOOKFXN
- .asg SWI_F_exec, _EXECFXN
- .asg SWI_F_run, _RUNFXN
- SWI_config _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN
-
-;; ======== TSK_config ========
- .asg 0400H, _STACKSIZE
- .asg MEM_NULL, _STACKSEG
- .asg 01H, _PRIORITY
- .asg _FXN_F_nop, _VCREATEFXN
- .asg _FXN_F_nop, _VDELETEFXN
- .asg _FXN_F_nop, _VEXITFXN
- .asg 00H, _SWITCHFXN
- .asg 00H, _READYFXN
- .asg 00H, _NUM_HOOKS
- TSK_config _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS
-
-;; ======== IDL_config ========
- .asg 01H, _USECLKIDLTIME
- .asg IDL_F_stub, _CALIBRFXN
- .asg 06H, _CALIBRERROR
- IDL_config _USECLKIDLTIME, _CALIBRFXN, _CALIBRERROR
-
-;; ======== ISRC_config ========
- ISRC_config
-
-;; ======== LOG_config ========
- .asg 01H, _ENABLED
- LOG_config _ENABLED
-
-;; ======== PIP_config ========
- .asg 02H, _gNumEmbed
- .asg 00H, _gNextId
- .asg 064H, _OBJSIZE
- PIP_config _gNumEmbed, _gNextId, _OBJSIZE
-
-;; ======== SEM_config ========
- SEM_config
-
-;; ======== MBX_config ========
- MBX_config
-
-;; ======== QUE_config ========
- QUE_config
-
-;; ======== LCK_config ========
- LCK_config
-
-;; ======== STS_config ========
- STS_config
-
-;; ======== SYS_config ========
- .asg _UTL_doAbort, _ABORTFXN
- .asg _UTL_doError, _ERRORFXN
- .asg _UTL_halt, _EXITFXN
- .asg _UTL_doPutc, _PUTCFXN
- SYS_config _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN
-
-;; ======== SIO_config ========
- SIO_config
-
-;; ======== GIO_config ========
- .asg _FXN_F_nop, _CREATEFXN
- .asg _FXN_F_nop, _DELETEFXN
- .asg _FXN_F_nop, _PENDFXN
- .asg _FXN_F_nop, _POSTFXN
- GIO_config _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN
-
-;; ======== DEV_config ========
- DEV_config
-
-;; ======== UDEV_config ========
- UDEV_config
-
-;; ======== DIO_config ========
- .asg 00H, _STATIC
- .asg 00H, _NUMTSKBASE
- .asg 00H, _NUMSWIBASE
- DIO_config _STATIC, _NUMTSKBASE, _NUMSWIBASE
-
-;; ======== DGN_config ========
- DGN_config
-
-;; ======== DHL_config ========
- .asg 00H, _gChannelsAvailable
- DHL_config _gChannelsAvailable
-
-;; ======== DPI_config ========
- DPI_config
-
-;; ======== MSGQ_config ========
- .asg 00H, _USEMSGQ
- MSGQ_config _USEMSGQ
-
-;; ======== HOOK_config ========
- .asg 00H, _KNLID
- HOOK_config _KNLID
-
-;; ======== MEM_Obj SDRAM ========
-;; This object defines 8MB for the DSP's off-chip memory
-;;
-;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global SDRAM
- .asg 0800000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== MEM_Obj IRAM ========
-;; Internal L2 memory
-;;
-;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global IRAM
- .asg 040000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== CLK_Obj PRD_clock ========
-;; This clock function calls PRD_tick from within the on-chip timer ISR
-;;
-;; CLK_Obj PRD_clock (function)
- .global PRD_clock
- .asg PRD_F_tick, _function
- CLK_Obj 1, PRD_clock, 0, _function
-
-;; ======== HST_Obj RTA_fromHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_fromHost
- .asg "input", _mode
- .asg "<NULL>", _buf
- .asg 04H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HST_Obj RTA_toHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_toHost
- .asg "output", _mode
- .asg "<NULL>", _buf
- .asg 040H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HWI_Obj HWI_RESET ========
-;; defines function for the RESET ISR
-;;
-;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESET
- .asg _c_int00, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_NMI ========
-;; defines function for the NMI ISR
-;;
-;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_NMI
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED0 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED0
- .asg RESERVED, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 04H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED1 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED1
- .asg _RTDX_Poll, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT4 ========
-;; defines the INT4 Interrupt
-;;
-;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT4
- .asg _ISR_AIC, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 010H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT5 ========
-;; defines the INT5 Interrupt
-;;
-;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT5
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 020H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT6 ========
-;; defines the INT6 Interrupt
-;;
-;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT6
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 040H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT7 ========
-;; defines the INT7 Interrupt
-;;
-;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT7
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 080H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT8 ========
-;; defines the INT8 Interrupt
-;;
-;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT8
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0100H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT9 ========
-;; defines the INT9 Interrupt
-;;
-;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT9
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0200H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT10 ========
-;; defines the INT10 Interrupt
-;;
-;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT10
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0400H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT11 ========
-;; defines the INT11 Interrupt
-;;
-;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT11
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0800H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT12 ========
-;; defines the INT12 Interrupt
-;;
-;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT12
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT13 ========
-;; defines the INT13 Interrupt
-;;
-;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT13
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT14 ========
-;; defines the INT14 Interrupt
-;;
-;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT14
- .asg CLK_F_isr, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "CLK", _client
- .asg 01H, _iUseDispatcher
- .asg CLK_A_TABBEG, _iArg
- .asg 04000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT15 ========
-;; defines the INT15 Interrupt
-;;
-;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT15
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== SWI_Obj KNL_swi ========
-;; This Software Interrupt calls the TSK scheduler
-;;
-;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global KNL_swi
- .asg _KNL_run, _function
- .asg 00H, _pri
- .asg 00H, _mailbox
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg 01H, _dorta
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== TSK_Obj TSK_idle ========
-;; This is the idle task; it only runs when no other task is ready
-;;
-;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global TSK_idle
- .asg IDL_F_loop, _iFXN
- .asg 00H, _iARG0
- .asg 00H, _iARG1
- .asg 00H, _iARG2
- .asg 00H, _iARG3
- .asg 00H, _iARG4
- .asg 00H, _iARG5
- .asg 00H, _iARG6
- .asg 00H, _iARG7
- .asg 01H, _iAUTOSTK
- .asg null, _iMANSTK
- .asg 0400H, _iSTKSZ
- .asg IRAM, _iSTKSEG
- .asg 00H, _iPRI
- .asg 00H, _iENV
- .asg 01H, _iEXITFLAG
- .asg 00H, _iUSETSKNAME
- .asg 00H, _iSTATREG
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== IDL_Obj IDL_cpuLoad ========
-;; This object is required by the system to acquire CPU load data
-;;
-;; IDL_Obj IDL_cpuLoad (function, calibration)
- .global IDL_cpuLoad
- .asg IDL_F_busy, _function
- .asg 01H, _calibration
- IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration
-
-;; ======== IDL_Obj LNK_dataPump ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj LNK_dataPump (function, calibration)
- .global LNK_dataPump
- .asg LNK_F_dataPump, _function
- .asg 01H, _calibration
- IDL_Obj 1, LNK_dataPump, 0, _function, _calibration
-
-;; ======== IDL_Obj RTA_dispatcher ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj RTA_dispatcher (function, calibration)
- .global RTA_dispatcher
- .asg RTA_F_dispatch, _function
- .asg 01H, _calibration
- IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration
-
-;; ======== LOG_Obj LOG_system ========
-;; This object is required by the system to accumulate execution trace information
-;;
-;; LOG_Obj LOG_system (bufseg, buflen, logtype, iType, iFormat)
- .global LOG_system
- .asg IRAM, _bufseg
- .asg 040H, _buflen
- .asg "circular", _logtype
- .asg "system", _iType
- .asg "0x%x, 0x%x, 0x%x", _iFormat
- LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype, _iType, _iFormat
-
-;; ======== STS_Obj IDL_busyObj ========
-;; This object is required by the system to accumulate CPU load statistics
-;;
-;; STS_Obj IDL_busyObj (prev, filter, maxformat, sumformat, avgformat, op, uType, iA, iB, iC, prevlow)
- .global IDL_busyObj
- .asg 00H, _prev
- .asg 01H, _filter
- .asg "%g", _maxformat
- .asg "%g", _sumformat
- .asg "%.2f", _avgformat
- .asg 00H, _op
- .asg 02H, _uType
- .asg 01H, _iA
- .asg 00H, _iB
- .asg 01H, _iC
- .asg 00H, _prevlow
- STS_Obj 1, IDL_busyObj, 0, _prev, _filter, _maxformat, _sumformat, _avgformat, _op, _uType, _iA, _iB, _iC, _prevlow
-
-;; MODULE INITIALIZATION
- .sect ".sysinit"
- .global BIOS_init, _BIOS_init
-BIOS_init:
-_BIOS_init:
- GBL_preamble
- GBL_init
- SEM_init
- MEM_init
- OBJ_init
- BUF_init
- POOL_init
- CLK_init
- PRD_init
- RTDX_init
- IDL_init
- LCK_init
- LOG_init
- MBX_init
- PIP_init
- QUE_init
- STS_init
- SYS_init
- HWI_init
- HST_init
- DEV_init
- UDEV_init
- DIO_init
- DGN_init
- DHL_init
- DPI_init
- SIO_init
- GIO_init
- MSGQ_init
- SWI_init
- HOOK_init
- TSK_init
- ISRC_init
- GBL_postamble
-
-;; MODULE STARTUP
- .sect ".sysinit"
- .global BIOS_start, _BIOS_start
-BIOS_start:
-_BIOS_start:
- GBL_preamble
- GBL_startup
- SEM_startup
- MEM_startup
- OBJ_startup
- BUF_startup
- POOL_startup
- CLK_startup
- PRD_startup
- RTDX_startup
- IDL_startup
- LCK_startup
- LOG_startup
- MBX_startup
- PIP_startup
- QUE_startup
- STS_startup
- SYS_startup
- HWI_startup
- HST_startup
- DEV_startup
- UDEV_startup
- DIO_startup
- DGN_startup
- DHL_startup
- DPI_startup
- SIO_startup
- GIO_startup
- MSGQ_startup
- SWI_startup
- HOOK_startup
- TSK_startup
- ISRC_startup
- GBL_postamble
-
-;; EPILOGUE
- GBL_end
- MEM_end
- OBJ_end
- BUF_end
- POOL_end
- CLK_end
- PRD_end
- RTDX_end
- HST_end
- HWI_end
- SWI_end
- TSK_end
- IDL_end
- ISRC_end
- LOG_end
- PIP_end
- SEM_end
- MBX_end
- QUE_end
- LCK_end
- STS_end
- SYS_end
- SIO_end
- GIO_end
- DEV_end
- UDEV_end
- DIO_end
- DGN_end
- DHL_end
- DPI_end
- MSGQ_end
- HOOK_end
-
- .copy confend.s62
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/808fef55e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/808fef55e20100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/808fef55e20100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/9063b0173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/9063b0173f070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/9063b0173f070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/b0e2e52de10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/b0e2e52de10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/b0e2e52de10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/c0caf92ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/c0caf92ddf0100181ce89bcacea45786
deleted file mode 100644
index 7fcdcf6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/89/c0caf92ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,1753 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 14:39:00 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a200
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000b60b 000349f5 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000023c0
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000380 intio.obj (.text)
- 000051e0 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 000054c0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005700 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000058c0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a60 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005be0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d60 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005ea0 00000120 : sinit.obj (.text:_call_dtors)
- 00005fc0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000060c0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000061c0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 000062c0 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 000063a0 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006480 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006540 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 000065e0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006620 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006660 00000040 : divf.obj (.text:___isnanf)
- 000066a0 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000066c0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000066e0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00006700 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006720 00000020 : _lock.obj (.text:__register_lock)
- 00006740 00000020 : _lock.obj (.text:__register_unlock)
- 00006760 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006780 00001744
- 00006780 00000800 intio.obj (.cinit)
- 00006f80 00000564 dsp_bios_cfg.obj (.cinit)
- 000074e4 00000004 --HOLE-- [fill = 0]
- 000074e8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007754 00000004 --HOLE-- [fill = 0]
- 00007758 000001a4 : knl.o67 (.cinit)
- 000078fc 00000004 --HOLE-- [fill = 0]
- 00007900 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 00007a2c 00000004 --HOLE-- [fill = 0]
- 00007a30 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007ae0 00000070 : tsk.o67 (.cinit)
- 00007b50 00000060 : tsk_stup.o67 (.cinit)
- 00007bb0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007c0c 00000004 --HOLE-- [fill = 0]
- 00007c10 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c64 00000004 --HOLE-- [fill = 0]
- 00007c68 0000004c bios.a67 : rta.o67 (.cinit)
- 00007cb4 00000004 --HOLE-- [fill = 0]
- 00007cb8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007d04 00000004 --HOLE-- [fill = 0]
- 00007d08 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007d3c 00000004 --HOLE-- [fill = 0]
- 00007d40 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d70 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d9c 00000004 --HOLE-- [fill = 0]
- 00007da0 0000002c rts6700.lib : exit.obj (.cinit)
- 00007dcc 00000004 --HOLE-- [fill = 0]
- 00007dd0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007df4 00000004 --HOLE-- [fill = 0]
- 00007df8 0000001c : sys.o67 (.cinit)
- 00007e14 00000004 --HOLE-- [fill = 0]
- 00007e18 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007e34 00000004 --HOLE-- [fill = 0]
- 00007e38 0000001c : atexit.obj (.cinit)
- 00007e54 00000004 --HOLE-- [fill = 0]
- 00007e58 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e70 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e80 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e8c 00000004 --HOLE-- [fill = 0]
- 00007e90 0000000c : idl_busy.o67 (.cinit)
- 00007e9c 00000004 --HOLE-- [fill = 0]
- 00007ea0 0000000c : knl_swit.o67 (.cinit)
- 00007eac 00000004 --HOLE-- [fill = 0]
- 00007eb0 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007ebc 00000004 --HOLE-- [fill = 0]
- 00007ec0 00000004 (.pad.cinit) [fill = 0]
-
-.log 0 00007ec4 00000018
- 00007ec4 00000018 dsp_bios_cfg.obj (.log)
-
-.args 0 00007edc 00000004
- 00007edc 00000004 --HOLE-- [fill = 0]
-
-.rtdx_text
-* 0 00007ee0 00000ea0
- 00007ee0 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 000082e0 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00008620 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00008920 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00008a60 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00008b40 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 00008bc0 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 00008c20 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 00008c80 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 00008cc0 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 00008d00 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 00008d20 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 00008d40 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 00008d60 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.far 0 00008d80 00000d60 UNINITIALIZED
- 00008d80 00000850 intio.obj (.far)
- 000095d0 00000188 rts6700.lib : atexit.obj (.far)
- 00009758 000000f4 csl6713.lib : csl_irq.obj (.far)
- 0000984c 000000d8 bios.a67 : knl.o67 (.far)
- 00009924 0000005c : tsk.o67 (.far)
- 00009980 00000054 : obj_init.o67 (.far)
- 000099d4 00000050 : tsk_stup.o67 (.far)
- 00009a24 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 00009a5c 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009a84 00000020 bios.a67 : sys.o67 (.far)
- 00009aa4 00000010 : knl_tick.o67 (.far)
- 00009ab4 0000000c : utl_putc.o67 (.far)
- 00009ac0 0000000c rts6700.lib : exit.obj (.far)
- 00009acc 00000008 : _lock.obj (.far)
- 00009ad4 00000008 : divf.obj (.far)
- 00009adc 00000004 : sinit.obj (.far)
-
-.rtdx_data
-* 0 00009ae0 0000044c UNINITIALIZED
- 00009ae0 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 00009ef0 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 00009f10 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 00009f2c 00000010 UNINITIALIZED
- 00009f2c 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 00009f40 00000420
- 00009f40 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a200 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a2c0 00000080 : tsk_init.o67 (.sysinit)
- 0000a340 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000a360 00000400 UNINITIALIZED
- 0000a360 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000a760 00000400 UNINITIALIZED
- 0000a760 00000400 --HOLE--
-
-.bss 0 0000ab60 0000033e UNINITIALIZED
- 0000ab60 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000ac60 000000cc : biosdata.o67 (.bss)
- 0000ad2c 0000009c : swi.o67 (.bss)
- 0000adc8 00000048 : knl.o67 (.bss)
- 0000ae10 00000018 : hwi.o67 (.bss)
- 0000ae28 00000018 dsp_bios_cfg.obj (.bss)
- 0000ae40 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000ae58 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000ae68 0000000c bios.a67 : tsk.o67 (.bss)
- 0000ae74 00000008 : clk_data.o67 (.bss)
- 0000ae7c 00000008 : sys.o67 (.bss)
- 0000ae84 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000ae8c 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000ae90 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000ae94 00000004 : idl_busy.o67 (.bss)
- 0000ae98 00000004 intio.obj (.bss)
- 0000ae9c 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000aea0 00000200
- 0000aea0 00000200 --HOLE-- [fill = 00000000]
-
-.tsk 0 0000b0a0 00000060 UNINITIALIZED
- 0000b0a0 00000060 dsp_bios_cfg.obj (.tsk)
-
-.LOG_system$buf
-* 0 0000b100 00000100 UNINITIALIZED
- 0000b100 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b200 00000100 UNINITIALIZED
- 0000b200 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000b300 000000f9
- 0000b300 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000b34e 00000002 --HOLE-- [fill = 0]
- 0000b350 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000b390 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000b3b3 00000022 : utl_doer.o67 (.const)
- 0000b3d5 00000003 --HOLE-- [fill = 0]
- 0000b3d8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000b3f8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000b3f9 0000003f COPY SECTION
- 0000b3f9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000b3fc 000000c8 UNINITIALIZED
- 0000b3fc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.gblinit 0 0000b4c4 00000040
- 0000b4c4 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000b504 0000003c UNINITIALIZED
- 0000b504 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000b540 00000030
- 0000b540 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000b570 0000002c UNINITIALIZED
- 0000b570 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000b59c 00000028
- 0000b59c 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idl 0 0000b5c4 00000010 UNINITIALIZED
- 0000b5c4 00000010 dsp_bios_cfg.obj (.idl)
-
-.idlcal 0 0000b5d4 00000010 UNINITIALIZED
- 0000b5d4 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000b5e4 00000010 UNINITIALIZED
- 0000b5e4 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000b5f4 0000000c
- 0000b5f4 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000b5f8 00000004 : rtdx_mon.o62 (.pinit)
- 0000b5fc 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000b600 0000000c
- 0000b600 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000b60c 00000008 UNINITIALIZED
- 0000b60c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000ab60 $bss
-0000ab60 .bss
-00000000 .data
-000043c0 .text
-0000a0e4 BIOS$$CLKOFF
-0000a0a4 BIOS$$CLKON
-00009f40 BIOS_init
-0000a14c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000b60c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000ac88 CLK_D_idletime
-0000ac84 CLK_D_isrhook
-0000ac80 CLK_D_tabbeg
-0000ac7c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000ac78 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000b610 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a88 GBL_USERINITFXN
-00000001 GBL_boot
-0000b608 GBL_initdone
-0000a760 GBL_stackbeg
-0000ab5f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000b504 HST_A_TABBEG
-0000b540 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000acf4 HST_D_chanmask
-0000acf8 HST_D_tabbeg
-0000acfc HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000ae20 HWI_D_bss
-0000ae24 HWI_D_ccmask
-0000ae10 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000b5d4 IDL_A_CALBEG
-0000b5c4 IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000ae94 IDL_D_busyObj
-0000ac68 IDL_D_calbeg
-0000ac64 IDL_D_calibrate
-0000ac60 IDL_D_tabbeg
-0000b5d0 IDL_END
-0000b5e0 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000b564 IDL_busyObj
-0000b433 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000b42d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000b560 IDL_busyObj$stsobj
-0000b430 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000b5c4 IDL_cpuLoad
-0000b5d4 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000b570 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000b544 KNL_swi$sts
-0000b409 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000b3f9 KNL_swi$sts$maxfmt
-0000b540 KNL_swi$sts$stsobj
-0000b401 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000b5c8 LNK_dataPump
-0000b5d8 LNK_dataPump$
-0000ae44 LNK_dspFrameReadyMask
-0000ae40 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000ae4c LNK_readDone
-0000ae50 LNK_readFail
-0000ae48 LNK_readPend
-00000370 LNK_rrloop
-0000ae54 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-00007ec4 LOG_A_TABBEG
-00007edc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000ac6c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-00007ec4 LOG_system
-0000b100 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000b3fc PIP_A_TABBEG
-0000b4c4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000ac70 PIP_D_tabbeg
-0000ac74 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000acb0 PRD_D_cur
-0000acb4 PRD_D_elapsed
-0000acb8 PRD_D_prevtim
-0000acbc PRD_D_scalar
-0000acc0 PRD_D_swihandle
-0000acc4 PRD_D_tabbeg
-0000acc8 PRD_D_tablen
-0000accc PRD_D_thook
-0000acac PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000b60c PRD_clock
-00000001 QUE$
-0000acd0 RTA_D_fromHost
-0000acd8 RTA_D_logval
-0000ace8 RTA_D_stsval
-0000acd4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000b5cc RTA_dispatcher
-0000b5dc RTA_dispatcher$
-00001f28 RTA_execute
-0000b508 RTA_fromHost
-00009f2c RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000b3fc RTA_fromHost$pipe
-0000b42c RTA_fromHost$pipe$aaa
-0000b45c RTA_fromHost$pipe$bbb
-0000ae28 RTA_fromHost$pipe$dtab
-0000b400 RTA_fromHost$pipe$rd
-0000b430 RTA_fromHost$pipe$wr
-0000b510 RTA_fromHost$rtdx
-0000b524 RTA_toHost
-0000b200 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000b460 RTA_toHost$pipe
-0000b490 RTA_toHost$pipe$aaa
-0000b4c0 RTA_toHost$pipe$bbb
-0000ae34 RTA_toHost$pipe$dtab
-0000b464 RTA_toHost$pipe$rd
-0000b494 RTA_toHost$pipe$wr
-0000b52c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000b540 STS_A_TABBEG
-0000b570 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000b570 SWI_A_TABBEG
-0000b59c SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000ad44 SWI_D_curfxn
-0000ad34 SWI_D_curmask
-0000ad40 SWI_D_curmbox
-0000ad38 SWI_D_curset
-0000ad30 SWI_D_execaddr
-0000ad4c SWI_D_inswi
-0000ad3c SWI_D_lock
-0000ad48 SWI_D_rdybeg
-0000ad50 SWI_D_rdytab
-0000ad2c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000b5e4 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000b604 TRC_R_mask
-0000b600 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000b0ac TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000a360 TSK_idle$stack
-0000a6f8 TSK_idle$stkptr
-0000b554 TSK_idle$sts
-0000b423 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000b413 TSK_idle$sts$maxfmt
-0000b550 TSK_idle$sts$stsobj
-0000b41b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00009f40 _BIOS_init
-0000a14c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000ae74 _CLK_DFLTMICROSECS
-0000aca8 _CLK_D_countspms
-0000ac9c _CLK_D_dirty
-0000ae78 _CLK_D_microseconds
-0000aca0 _CLK_D_prd
-0000aca4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000ac8c _CLK_htimeDiv
-0000ac90 _CLK_htimeMult
-0000ae8c _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000ac94 _CLK_ltimeDiv
-0000ac98 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-000095a8 _Config
-0000ae84 _DSK6713_AIC23_codeccontrolhandle
-0000ae88 _DSK6713_AIC23_codecdatahandle
-00005ccc _DSK6713_AIC23_config
-000051e0 _DSK6713_AIC23_openCodec
-00005ca8 _DSK6713_AIC23_rget
-00005be0 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000ae9c _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000ad04 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000ad08 _GBL_freq
-00004320 _GBL_getVersion
-0000ad00 _GBL_procId
-00005a88 _GBL_setPLLto225MHz
-0000b504 _HST_A_TABBEG
-0000b540 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000ae1c _HWI_D_inhwi
-0000ae10 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000ab58 _HWI_STKBOTTOM
-0000a760 _HWI_STKTOP
-0000ae10 _HWI_data
-00004020 _HWI_disable
-0000ab60 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000ae98 _H_Codec
-0000b564 _IDL_busyObj
-0000b5c4 _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-000065e0 _IRQ_enable
-000066a0 _IRQ_globalDisable
-000066c0 _IRQ_globalEnable
-00005700 _IRQ_map
-000066e0 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000add0 _KNL_alarm
-00003440 _KNL_check
-0000adf4 _KNL_curqueue
-0000ade4 _KNL_curtask
-0000adec _KNL_curtime
-000098ec _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000ae0c _KNL_idlefxn
-0000add8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000adf8 _KNL_maxqueue
-00003aa0 _KNL_post
-0000ade8 _KNL_prevtask
-0000addc _KNL_priority
-0000984c _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000ade0 _KNL_set
-0000add4 _KNL_setpri
-0000b570 _KNL_swi
-0000adf0 _KNL_swiptr
-00002cec _KNL_switch
-0000ae00 _KNL_tcreatefxn
-0000ae04 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000ae08 _KNL_treadyfxn
-0000adfc _KNL_tswitchfxn
-0000adc8 _KNL_wFlag
-0000adcc _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000b5c8 _LNK_dataPump
-0000ae44 _LNK_dspFrameReadyMask
-0000ae40 _LNK_dspFrameRequestMask
-0000ae4c _LNK_readDone
-0000ae50 _LNK_readFail
-0000ae48 _LNK_readPend
-0000ae54 _LNK_writeFail
-00007ec4 _LOG_A_TABBEG
-00007edc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000ac6c _LOG_D_system
-00003ea0 _LOG_event
-00007ec4 _LOG_system
-00005fc0 _MCBSP_open
-000058c0 _MCBSP_reset
-000060c0 _MCBSP_start
-0000ad0c _MEM_D_NUMSEGMENTS
-0000ad14 _MEM_D_freelist
-0000ad18 _MEM_D_lockaddr
-0000ad10 _MEM_D_memtab
-0000ad1c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000a340 _OBJ_init
-000099b8 _OBJ_segtab
-00009980 _OBJ_table
-0000b3fc _PIP_A_TABBEG
-0000b4c4 _PIP_A_TABEND
-0000acac _PRD_D_tick
-0000b60c _PRD_clock
-0000b5cc _RTA_dispatcher
-0000b508 _RTA_fromHost
-0000b524 _RTA_toHost
-00009ae0 _RTDX_Buffer
-00009eec _RTDX_Buffer_End
-00008bc0 _RTDX_Buffer_Initialize
-00008d00 _RTDX_Buffer_Read
-00008c20 _RTDX_Buffer_ReadCB
-00008c80 _RTDX_Buffer_Size
-00009ee8 _RTDX_Buffer_Start
-00008d20 _RTDX_Buffer_Write
-000082e0 _RTDX_Buffer_WriteCB
-00008cc0 _RTDX_Final_RT_Monitor
-00008b40 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-00008d60 _RTDX_Mask_IER
-00008920 _RTDX_Mon_Queue
-00007ee0 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-00009efc _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000b540 _STS_A_TABBEG
-0000b570 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000ad44 _SWI_D_curfxn
-0000ad34 _SWI_D_curmask
-0000ad38 _SWI_D_curset
-0000ad30 _SWI_D_execaddr
-0000ad4c _SWI_D_inswi
-0000ad3c _SWI_D_lock
-0000ad48 _SWI_D_rdybeg
-0000ad2c _SWI_D_runaddr
-0000ad2c _SWI_data
-00000e50 _SWI_post
-0000ad20 _SYS
-0000aea0 _SYS_PUTCBEG
-0000b09f _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009a84 _SYS_exitStack
-0000ae7c _SYS_exitStackPtr
-0000ae80 _SYS_exitStackTop
-0000b604 _TRC_R_mask
-0000ae70 _TSK
-00009924 _TSK_ATTRS
-00009940 _TSK_config
-00002fa0 _TSK_exit
-0000b0ac _TSK_idle
-0000a2c0 _TSK_init
-0000ae68 _TSK_nTasks
-0000ae6c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-00009960 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000ad28 __HOOK_NUMHOOKS
-0000ad24 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009844 __IRQ_dispatchTable
-00009780 __IRQ_eventTable
-00006760 __IRQ_hookFetchPacket
-00009804 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00009a54 __MCBSP_hDev0
-00009a58 __MCBSP_hDev1
-000099fc __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-000099d4 __TSK_mutex
-00009ac8 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006620 ___add_dtor
-000095d0 ___atexit_func_id__
-ffffffff ___binit__
-0000ab60 ___bss__
-ffffffff ___c_args__
-00006780 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000ae9e ___end__
-00006780 ___etext__
-0000b5f4 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009ac0 __cleanup_ptr
-000043c0 __divf
-00009ac4 __dtors_ptr
-000062c0 __frcmpyf_div
-00009acc __lock
-00006700 __nop
-00006720 __register_lock
-00006740 __register_unlock
-0000a760 __stack
-00005d60 __strasgi
-00009ad0 __unlock
-000061c0 _atexit
-00008d80 _b
-0000a200 _c_int00
-00005ea0 _call_dtors
-00009adc _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-000054c0 _memcpy
-0000641c _mono_read_16Bit
-000063f4 _mono_write_16Bit
-000050e0 _non_circ_fir
-0000ae60 _rtdxNullChanCnt
-0000ae64 _rtdxNullFuncCnt
-00009ef0 _rtdx_buffer_state
-00009f10 _rtdx_mon_state
-000063c8 _stereo_read_16Bit
-000063a0 _stereo_write_16Bit
-00005a60 _wait500nS
-00009548 _x
-ffffffff binit
-00006780 cinit
-00000000 edata
-0000ae9e end
-00006780 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000b5f4 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050e0 _non_circ_fir
-000051e0 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-000054c0 _memcpy
-00005700 _IRQ_map
-000058c0 _MCBSP_reset
-00005a60 _wait500nS
-00005a88 GBL_USERINITFXN
-00005a88 _GBL_setPLLto225MHz
-00005be0 _DSK6713_AIC23_rset
-00005ca8 _DSK6713_AIC23_rget
-00005ccc _DSK6713_AIC23_config
-00005d60 __strasgi
-00005ea0 _call_dtors
-00005fc0 _MCBSP_open
-000060c0 _MCBSP_start
-000061c0 _atexit
-000062c0 __frcmpyf_div
-000063a0 _stereo_write_16Bit
-000063c8 _stereo_read_16Bit
-000063f4 _mono_write_16Bit
-0000641c _mono_read_16Bit
-000065e0 _IRQ_enable
-00006620 ___add_dtor
-000066a0 _IRQ_globalDisable
-000066c0 _IRQ_globalEnable
-000066e0 _IRQ_nmiEnable
-00006700 __nop
-00006720 __register_lock
-00006740 __register_unlock
-00006760 __IRQ_hookFetchPacket
-00006780 ___cinit__
-00006780 ___etext__
-00006780 cinit
-00006780 etext
-00007ec4 LOG_A_TABBEG
-00007ec4 LOG_system
-00007ec4 _LOG_A_TABBEG
-00007ec4 _LOG_system
-00007edc LOG_A_TABEND
-00007edc _LOG_A_TABEND
-00007ee0 _RTDX_Poll
-000082e0 _RTDX_Buffer_WriteCB
-00008920 _RTDX_Mon_Queue
-00008b40 _RTDX_Init_RT_Monitor
-00008bc0 _RTDX_Buffer_Initialize
-00008c20 _RTDX_Buffer_ReadCB
-00008c80 _RTDX_Buffer_Size
-00008cc0 _RTDX_Final_RT_Monitor
-00008d00 _RTDX_Buffer_Read
-00008d20 _RTDX_Buffer_Write
-00008d60 _RTDX_Mask_IER
-00008d80 _b
-00009548 _x
-000095a8 _Config
-000095d0 ___atexit_func_id__
-00009780 __IRQ_eventTable
-00009804 __IRQ_intTable
-00009844 __IRQ_dispatchTable
-0000984c _KNL_queues
-000098ec _KNL_dummy
-00009924 _TSK_ATTRS
-00009940 _TSK_config
-00009960 _TSK_timerSem
-00009980 _OBJ_table
-000099b8 _OBJ_segtab
-000099d4 __TSK_mutex
-000099fc __MEM_mutex
-00009a54 __MCBSP_hDev0
-00009a58 __MCBSP_hDev1
-00009a84 _SYS_exitStack
-00009ac0 __cleanup_ptr
-00009ac4 __dtors_ptr
-00009ac8 ___TI_enable_exit_profile_output
-00009acc __lock
-00009ad0 __unlock
-00009adc _dtors
-00009ae0 _RTDX_Buffer
-00009ee8 _RTDX_Buffer_Start
-00009eec _RTDX_Buffer_End
-00009ef0 _rtdx_buffer_state
-00009efc _RTDX_writing
-00009f10 _rtdx_mon_state
-00009f2c RTA_fromHost$buf
-00009f40 BIOS_init
-00009f40 _BIOS_init
-0000a0a4 BIOS$$CLKON
-0000a0e4 BIOS$$CLKOFF
-0000a14c BIOS_start
-0000a14c _BIOS_start
-0000a200 _c_int00
-0000a2c0 _TSK_init
-0000a340 _OBJ_init
-0000a360 TSK_idle$stack
-0000a6f8 TSK_idle$stkptr
-0000a760 GBL_stackbeg
-0000a760 _HWI_STKTOP
-0000a760 __stack
-0000ab58 _HWI_STKBOTTOM
-0000ab5f GBL_stackend
-0000ab60 $bss
-0000ab60 .bss
-0000ab60 _HWI_dispatchTab
-0000ab60 ___bss__
-0000ac60 IDL_D_tabbeg
-0000ac64 IDL_D_calibrate
-0000ac68 IDL_D_calbeg
-0000ac6c LOG_D_system
-0000ac6c _LOG_D_system
-0000ac70 PIP_D_tabbeg
-0000ac74 PIP_D_tablen
-0000ac78 CLK_R_time
-0000ac7c CLK_D_timefxn
-0000ac80 CLK_D_tabbeg
-0000ac84 CLK_D_isrhook
-0000ac88 CLK_D_idletime
-0000ac8c _CLK_htimeDiv
-0000ac90 _CLK_htimeMult
-0000ac94 _CLK_ltimeDiv
-0000ac98 _CLK_ltimeMult
-0000ac9c _CLK_D_dirty
-0000aca0 _CLK_D_prd
-0000aca4 _CLK_D_tddr
-0000aca8 _CLK_D_countspms
-0000acac PRD_D_tick
-0000acac _PRD_D_tick
-0000acb0 PRD_D_cur
-0000acb4 PRD_D_elapsed
-0000acb8 PRD_D_prevtim
-0000acbc PRD_D_scalar
-0000acc0 PRD_D_swihandle
-0000acc4 PRD_D_tabbeg
-0000acc8 PRD_D_tablen
-0000accc PRD_D_thook
-0000acd0 RTA_D_fromHost
-0000acd4 RTA_D_toHost
-0000acd8 RTA_D_logval
-0000ace8 RTA_D_stsval
-0000acf4 HST_D_chanmask
-0000acf8 HST_D_tabbeg
-0000acfc HST_D_tabend
-0000ad00 _GBL_procId
-0000ad04 _GBL_clkIn
-0000ad08 _GBL_freq
-0000ad0c _MEM_D_NUMSEGMENTS
-0000ad10 _MEM_D_memtab
-0000ad14 _MEM_D_freelist
-0000ad18 _MEM_D_lockaddr
-0000ad1c _MEM_D_unlockaddr
-0000ad20 _SYS
-0000ad24 __HOOK_knlId
-0000ad28 __HOOK_NUMHOOKS
-0000ad2c SWI_D_runaddr
-0000ad2c _SWI_D_runaddr
-0000ad2c _SWI_data
-0000ad30 SWI_D_execaddr
-0000ad30 _SWI_D_execaddr
-0000ad34 SWI_D_curmask
-0000ad34 _SWI_D_curmask
-0000ad38 SWI_D_curset
-0000ad38 _SWI_D_curset
-0000ad3c SWI_D_lock
-0000ad3c _SWI_D_lock
-0000ad40 SWI_D_curmbox
-0000ad44 SWI_D_curfxn
-0000ad44 _SWI_D_curfxn
-0000ad48 SWI_D_rdybeg
-0000ad48 _SWI_D_rdybeg
-0000ad4c SWI_D_inswi
-0000ad4c _SWI_D_inswi
-0000ad50 SWI_D_rdytab
-0000adc8 _KNL_wFlag
-0000adcc _KNL_wList
-0000add0 _KNL_alarm
-0000add4 _KNL_setpri
-0000add8 _KNL_inactive
-0000addc _KNL_priority
-0000ade0 _KNL_set
-0000ade4 _KNL_curtask
-0000ade8 _KNL_prevtask
-0000adec _KNL_curtime
-0000adf0 _KNL_swiptr
-0000adf4 _KNL_curqueue
-0000adf8 _KNL_maxqueue
-0000adfc _KNL_tswitchfxn
-0000ae00 _KNL_tcreatefxn
-0000ae04 _KNL_tdeletefxn
-0000ae08 _KNL_treadyfxn
-0000ae0c _KNL_idlefxn
-0000ae10 HWI_D_spsave
-0000ae10 _HWI_D_spsave
-0000ae10 _HWI_data
-0000ae1c _HWI_D_inhwi
-0000ae20 HWI_D_bss
-0000ae24 HWI_D_ccmask
-0000ae28 RTA_fromHost$pipe$dtab
-0000ae34 RTA_toHost$pipe$dtab
-0000ae40 LNK_dspFrameRequestMask
-0000ae40 _LNK_dspFrameRequestMask
-0000ae44 LNK_dspFrameReadyMask
-0000ae44 _LNK_dspFrameReadyMask
-0000ae48 LNK_readPend
-0000ae48 _LNK_readPend
-0000ae4c LNK_readDone
-0000ae4c _LNK_readDone
-0000ae50 LNK_readFail
-0000ae50 _LNK_readFail
-0000ae54 LNK_writeFail
-0000ae54 _LNK_writeFail
-0000ae60 _rtdxNullChanCnt
-0000ae64 _rtdxNullFuncCnt
-0000ae68 _TSK_nTasks
-0000ae6c _TSK_pid
-0000ae70 _TSK
-0000ae74 _CLK_DFLTMICROSECS
-0000ae78 _CLK_D_microseconds
-0000ae7c _SYS_exitStackPtr
-0000ae80 _SYS_exitStackTop
-0000ae84 _DSK6713_AIC23_codeccontrolhandle
-0000ae88 _DSK6713_AIC23_codecdatahandle
-0000ae8c _CLK_htimePerLtime
-0000ae94 IDL_D_busyObj
-0000ae98 _H_Codec
-0000ae9c _DSK6713_version
-0000ae9e ___end__
-0000ae9e end
-0000aea0 _SYS_PUTCBEG
-0000b09f _SYS_PUTCEND
-0000b0ac TSK_idle
-0000b0ac _TSK_idle
-0000b100 LOG_system$buf
-0000b200 RTA_toHost$buf
-0000b3f9 KNL_swi$sts$maxfmt
-0000b3fc PIP_A_TABBEG
-0000b3fc RTA_fromHost$pipe
-0000b3fc _PIP_A_TABBEG
-0000b400 RTA_fromHost$pipe$rd
-0000b401 KNL_swi$sts$sumfmt
-0000b409 KNL_swi$sts$avgfmt
-0000b413 TSK_idle$sts$maxfmt
-0000b41b TSK_idle$sts$sumfmt
-0000b423 TSK_idle$sts$avgfmt
-0000b42c RTA_fromHost$pipe$aaa
-0000b42d IDL_busyObj$maxfmt
-0000b430 IDL_busyObj$sumfmt
-0000b430 RTA_fromHost$pipe$wr
-0000b433 IDL_busyObj$avgfmt
-0000b45c RTA_fromHost$pipe$bbb
-0000b460 RTA_toHost$pipe
-0000b464 RTA_toHost$pipe$rd
-0000b490 RTA_toHost$pipe$aaa
-0000b494 RTA_toHost$pipe$wr
-0000b4c0 RTA_toHost$pipe$bbb
-0000b4c4 PIP_A_TABEND
-0000b4c4 _PIP_A_TABEND
-0000b504 HST_A_TABBEG
-0000b504 _HST_A_TABBEG
-0000b508 RTA_fromHost
-0000b508 _RTA_fromHost
-0000b510 RTA_fromHost$rtdx
-0000b524 RTA_toHost
-0000b524 _RTA_toHost
-0000b52c RTA_toHost$rtdx
-0000b540 HST_A_TABEND
-0000b540 KNL_swi$sts$stsobj
-0000b540 STS_A_TABBEG
-0000b540 _HST_A_TABEND
-0000b540 _STS_A_TABBEG
-0000b544 KNL_swi$sts
-0000b550 TSK_idle$sts$stsobj
-0000b554 TSK_idle$sts
-0000b560 IDL_busyObj$stsobj
-0000b564 IDL_busyObj
-0000b564 _IDL_busyObj
-0000b570 KNL_swi
-0000b570 STS_A_TABEND
-0000b570 SWI_A_TABBEG
-0000b570 _KNL_swi
-0000b570 _STS_A_TABEND
-0000b59c SWI_A_TABEND
-0000b5c4 IDL_A_TABBEG
-0000b5c4 IDL_cpuLoad
-0000b5c4 _IDL_cpuLoad
-0000b5c8 LNK_dataPump
-0000b5c8 _LNK_dataPump
-0000b5cc RTA_dispatcher
-0000b5cc _RTA_dispatcher
-0000b5d0 IDL_END
-0000b5d4 IDL_A_CALBEG
-0000b5d4 IDL_cpuLoad$
-0000b5d8 LNK_dataPump$
-0000b5dc RTA_dispatcher$
-0000b5e0 IDL_END$
-0000b5e4 SYS$config
-0000b5f4 ___pinit__
-0000b5f4 pinit
-0000b600 TRC_cinit
-0000b604 TRC_R_mask
-0000b604 _TRC_R_mask
-0000b608 GBL_initdone
-0000b60c CLK_A_TABBEG
-0000b60c PRD_clock
-0000b60c _PRD_clock
-0000b610 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[717 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8a/10871aafe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8a/10871aafe50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8a/10871aafe50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/30d9714c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/30d9714c7506001814daa3a49c232c18
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/30d9714c7506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/b01c90f77406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/b01c90f77406001814daa3a49c232c18
deleted file mode 100644
index 3f1fdbc..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/b01c90f77406001814daa3a49c232c18
+++ /dev/null
@@ -1,157 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/d0d3fe2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/d0d3fe2ddf0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/d0d3fe2ddf0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/e0245e173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/e0245e173f070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8c/e0245e173f070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/100e8279cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/100e8279cd0100181ce89bcacea45786
deleted file mode 100644
index 131cf32..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/100e8279cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,14 +0,0 @@
-utils.loadPlatform("ti.platforms.dsk6713");
-
-/* The following DSP/BIOS Features are enabled. */
-bios.enableRealTimeAnalysis(prog);
-bios.enableRtdx(prog);
-bios.enableTskManager(prog);
-
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive");
-bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC");
-bios.HWI.instance("HWI_INT4").useDispatcher = 1;
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit");
-// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
-
-prog.gen();
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/508bf155e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/508bf155e20100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/508bf155e20100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d0d0754c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d0d0754c7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/d0d0754c7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/f0cfc6f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/f0cfc6f041070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8d/f0cfc6f041070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/30d8a3df7406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/30d8a3df7406001814daa3a49c232c18
deleted file mode 100644
index 4c696ee..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/30d8a3df7406001814daa3a49c232c18
+++ /dev/null
@@ -1,155 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60fedcf244070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60fedcf244070018153483e962c7925e
deleted file mode 100644
index 398dc61..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8e/60fedcf244070018153483e962c7925e
+++ /dev/null
@@ -1,150 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N]= {0};
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (double) sample_in / 32767.0;
- sample_out = circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N;
- ptr--;
-}
-
-// Perform linear convolution
-short circ_fir()
-{
- double y = 0;
- int i;
- for(i = ptr; i < N+ptr; i++) {
- y += buffer[i%N] * b[N-i-ptr-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/105db0277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/105db0277506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/105db0277506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/30b97d3d7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/30b97d3d7506001814daa3a49c232c18
deleted file mode 100644
index 0a71519..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/30b97d3d7506001814daa3a49c232c18
+++ /dev/null
@@ -1,151 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/50329679cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/50329679cd0100181ce89bcacea45786
deleted file mode 100644
index 1f831ca..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/50329679cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718aeH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/7086ea55e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/7086ea55e20100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/7086ea55e20100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f08adc3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f08adc3a45070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/8f/f08adc3a45070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/20f98b79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/20f98b79cd0100181ce89bcacea45786
deleted file mode 100644
index f13e3eb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/20f98b79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header File */
-#include "dsp_bios_cfg.h"
-
-/* Config Structures */
-/* Handles */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/c0f0058f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/c0f0058f41070018153483e962c7925e
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9/c0f0058f41070018153483e962c7925e
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/90/f044b1cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/90/f044b1cc7506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/90/f044b1cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/c009e824610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/c009e824610b001815de8ca47440e6f8
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/c009e824610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f044ff98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f044ff98d80100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f044ff98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f04e7f79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f04e7f79cd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/91/f04e7f79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/d00810167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/d00810167506001814daa3a49c232c18
deleted file mode 100644
index a4ef54c..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/d00810167506001814daa3a49c232c18
+++ /dev/null
@@ -1,1753 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 15:39:15 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a960
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd73 0003428d RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000023a0
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000360 intio.obj (.text)
- 000051c0 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 000054a0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056e0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000058a0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a40 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005bc0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d40 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e80 00000120 : sinit.obj (.text:_call_dtors)
- 00005fa0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000060a0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000061a0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 000062a0 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006380 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006460 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006520 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 000065c0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006600 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006640 00000040 : divf.obj (.text:___isnanf)
- 00006680 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000066a0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000066c0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066e0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006700 00000020 : _lock.obj (.text:__register_lock)
- 00006720 00000020 : _lock.obj (.text:__register_unlock)
- 00006740 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006760 00001754
- 00006760 00000810 intio.obj (.cinit)
- 00006f70 00000564 dsp_bios_cfg.obj (.cinit)
- 000074d4 00000004 --HOLE-- [fill = 0]
- 000074d8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007744 00000004 --HOLE-- [fill = 0]
- 00007748 000001a4 : knl.o67 (.cinit)
- 000078ec 00000004 --HOLE-- [fill = 0]
- 000078f0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 00007a1c 00000004 --HOLE-- [fill = 0]
- 00007a20 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007ad0 00000070 : tsk.o67 (.cinit)
- 00007b40 00000060 : tsk_stup.o67 (.cinit)
- 00007ba0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bfc 00000004 --HOLE-- [fill = 0]
- 00007c00 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c54 00000004 --HOLE-- [fill = 0]
- 00007c58 0000004c bios.a67 : rta.o67 (.cinit)
- 00007ca4 00000004 --HOLE-- [fill = 0]
- 00007ca8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cf4 00000004 --HOLE-- [fill = 0]
- 00007cf8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007d2c 00000004 --HOLE-- [fill = 0]
- 00007d30 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d60 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d8c 00000004 --HOLE-- [fill = 0]
- 00007d90 0000002c rts6700.lib : exit.obj (.cinit)
- 00007dbc 00000004 --HOLE-- [fill = 0]
- 00007dc0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007de4 00000004 --HOLE-- [fill = 0]
- 00007de8 0000001c : sys.o67 (.cinit)
- 00007e04 00000004 --HOLE-- [fill = 0]
- 00007e08 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007e24 00000004 --HOLE-- [fill = 0]
- 00007e28 0000001c : atexit.obj (.cinit)
- 00007e44 00000004 --HOLE-- [fill = 0]
- 00007e48 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e60 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e70 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e7c 00000004 --HOLE-- [fill = 0]
- 00007e80 0000000c : idl_busy.o67 (.cinit)
- 00007e8c 00000004 --HOLE-- [fill = 0]
- 00007e90 0000000c : knl_swit.o67 (.cinit)
- 00007e9c 00000004 --HOLE-- [fill = 0]
- 00007ea0 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007eac 00000004 --HOLE-- [fill = 0]
- 00007eb0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007eb4 00000004
- 00007eb4 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007eb8 000014d8 UNINITIALIZED
- 00007eb8 00000fc8 intio.obj (.far)
- 00008e80 00000188 rts6700.lib : atexit.obj (.far)
- 00009008 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090fc 000000d8 bios.a67 : knl.o67 (.far)
- 000091d4 0000005c : tsk.o67 (.far)
- 00009230 00000054 : obj_init.o67 (.far)
- 00009284 00000050 : tsk_stup.o67 (.far)
- 000092d4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 0000930c 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009334 00000020 bios.a67 : sys.o67 (.far)
- 00009354 00000010 : knl_tick.o67 (.far)
- 00009364 0000000c : utl_putc.o67 (.far)
- 00009370 0000000c rts6700.lib : exit.obj (.far)
- 0000937c 00000008 : _lock.obj (.far)
- 00009384 00000008 : divf.obj (.far)
- 0000938c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009390 00000010 UNINITIALIZED
- 00009390 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 000093a0 00000ea0
- 000093a0 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 000097a0 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009ae0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009de0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009f20 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 0000a000 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a080 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a0e0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a140 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a180 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a1c0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a1e0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a200 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a220 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a240 0000044c UNINITIALIZED
- 0000a240 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a650 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a670 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a68c 00000010 UNINITIALIZED
- 0000a68c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a6a0 00000420
- 0000a6a0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a960 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000aa20 00000080 : tsk_init.o67 (.sysinit)
- 0000aaa0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aac0 00000400 UNINITIALIZED
- 0000aac0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000aec0 00000400 UNINITIALIZED
- 0000aec0 00000400 --HOLE--
-
-.bss 0 0000b2c0 0000033e UNINITIALIZED
- 0000b2c0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b3c0 000000cc : biosdata.o67 (.bss)
- 0000b48c 0000009c : swi.o67 (.bss)
- 0000b528 00000048 : knl.o67 (.bss)
- 0000b570 00000018 : hwi.o67 (.bss)
- 0000b588 00000018 dsp_bios_cfg.obj (.bss)
- 0000b5a0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b5b8 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b5c8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b5d4 00000008 : clk_data.o67 (.bss)
- 0000b5dc 00000008 : sys.o67 (.bss)
- 0000b5e4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b5ec 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b5f0 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b5f4 00000004 : idl_busy.o67 (.bss)
- 0000b5f8 00000004 intio.obj (.bss)
- 0000b5fc 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b600 00000200
- 0000b600 00000200 --HOLE-- [fill = 00000000]
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bc24 00000040
- 0000bc24 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000bc64 0000003c UNINITIALIZED
- 0000bc64 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bca0 00000030
- 0000bca0 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bcd0 0000002c UNINITIALIZED
- 0000bcd0 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcfc 00000028
- 0000bcfc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000bd24 00000018
- 0000bd24 00000018 dsp_bios_cfg.obj (.log)
-
-.idlcal 0 0000bd3c 00000010 UNINITIALIZED
- 0000bd3c 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd4c 00000010 UNINITIALIZED
- 0000bd4c 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd5c 0000000c
- 0000bd5c 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd60 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd64 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd68 0000000c
- 0000bd68 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd74 00000008 UNINITIALIZED
- 0000bd74 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b2c0 $bss
-0000b2c0 .bss
-00000000 .data
-000043c0 .text
-0000a844 BIOS$$CLKOFF
-0000a804 BIOS$$CLKON
-0000a6a0 BIOS_init
-0000a8ac BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd74 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b3e8 CLK_D_idletime
-0000b3e4 CLK_D_isrhook
-0000b3e0 CLK_D_tabbeg
-0000b3dc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b3d8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd78 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a68 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd70 GBL_initdone
-0000aec0 GBL_stackbeg
-0000b2bf GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc64 HST_A_TABBEG
-0000bca0 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b454 HST_D_chanmask
-0000b458 HST_D_tabbeg
-0000b45c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b580 HWI_D_bss
-0000b584 HWI_D_ccmask
-0000b570 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd3c IDL_A_CALBEG
-0000a68c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b5f4 IDL_D_busyObj
-0000b3c8 IDL_D_calbeg
-0000b3c4 IDL_D_calibrate
-0000b3c0 IDL_D_tabbeg
-0000a698 IDL_END
-0000bd48 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bcc4 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bcc0 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a68c IDL_cpuLoad
-0000bd3c IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bcd0 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bca4 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bca0 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a690 LNK_dataPump
-0000bd40 LNK_dataPump$
-0000b5a4 LNK_dspFrameReadyMask
-0000b5a0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b5ac LNK_readDone
-0000b5b0 LNK_readFail
-0000b5a8 LNK_readPend
-00000370 LNK_rrloop
-0000b5b4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bd24 LOG_A_TABBEG
-0000bd3c LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b3cc LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bd24 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b3d0 PIP_D_tabbeg
-0000b3d4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b410 PRD_D_cur
-0000b414 PRD_D_elapsed
-0000b418 PRD_D_prevtim
-0000b41c PRD_D_scalar
-0000b420 PRD_D_swihandle
-0000b424 PRD_D_tabbeg
-0000b428 PRD_D_tablen
-0000b42c PRD_D_thook
-0000b40c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd74 PRD_clock
-00000001 QUE$
-0000b430 RTA_D_fromHost
-0000b438 RTA_D_logval
-0000b448 RTA_D_stsval
-0000b434 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a694 RTA_dispatcher
-0000bd44 RTA_dispatcher$
-00001f28 RTA_execute
-0000bc68 RTA_fromHost
-00009390 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b588 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b594 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc8c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bca0 STS_A_TABBEG
-0000bcd0 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bcd0 SWI_A_TABBEG
-0000bcfc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b4a4 SWI_D_curfxn
-0000b494 SWI_D_curmask
-0000b4a0 SWI_D_curmbox
-0000b498 SWI_D_curset
-0000b490 SWI_D_execaddr
-0000b4ac SWI_D_inswi
-0000b49c SWI_D_lock
-0000b4a8 SWI_D_rdybeg
-0000b4b0 SWI_D_rdytab
-0000b48c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd4c SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd6c TRC_R_mask
-0000bd68 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aac0 TSK_idle$stack
-0000ae58 TSK_idle$stkptr
-0000bcb4 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bcb0 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a6a0 _BIOS_init
-0000a8ac _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b5d4 _CLK_DFLTMICROSECS
-0000b408 _CLK_D_countspms
-0000b3fc _CLK_D_dirty
-0000b5d8 _CLK_D_microseconds
-0000b400 _CLK_D_prd
-0000b404 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b3ec _CLK_htimeDiv
-0000b3f0 _CLK_htimeMult
-0000b5ec _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b3f4 _CLK_ltimeDiv
-0000b3f8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e58 _Config
-0000b5e4 _DSK6713_AIC23_codeccontrolhandle
-0000b5e8 _DSK6713_AIC23_codecdatahandle
-00005cac _DSK6713_AIC23_config
-000051c0 _DSK6713_AIC23_openCodec
-00005c88 _DSK6713_AIC23_rget
-00005bc0 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5fc _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b464 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b468 _GBL_freq
-00004320 _GBL_getVersion
-0000b460 _GBL_procId
-00005a68 _GBL_setPLLto225MHz
-0000bc64 _HST_A_TABBEG
-0000bca0 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b57c _HWI_D_inhwi
-0000b570 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b2b8 _HWI_STKBOTTOM
-0000aec0 _HWI_STKTOP
-0000b570 _HWI_data
-00004020 _HWI_disable
-0000b2c0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5f8 _H_Codec
-0000bcc4 _IDL_busyObj
-0000a68c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-000065c0 _IRQ_enable
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000056e0 _IRQ_map
-000066c0 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b530 _KNL_alarm
-00003440 _KNL_check
-0000b554 _KNL_curqueue
-0000b544 _KNL_curtask
-0000b54c _KNL_curtime
-0000919c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b56c _KNL_idlefxn
-0000b538 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b558 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b548 _KNL_prevtask
-0000b53c _KNL_priority
-000090fc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b540 _KNL_set
-0000b534 _KNL_setpri
-0000bcd0 _KNL_swi
-0000b550 _KNL_swiptr
-00002cec _KNL_switch
-0000b560 _KNL_tcreatefxn
-0000b564 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b568 _KNL_treadyfxn
-0000b55c _KNL_tswitchfxn
-0000b528 _KNL_wFlag
-0000b52c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a690 _LNK_dataPump
-0000b5a4 _LNK_dspFrameReadyMask
-0000b5a0 _LNK_dspFrameRequestMask
-0000b5ac _LNK_readDone
-0000b5b0 _LNK_readFail
-0000b5a8 _LNK_readPend
-0000b5b4 _LNK_writeFail
-0000bd24 _LOG_A_TABBEG
-0000bd3c _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b3cc _LOG_D_system
-00003ea0 _LOG_event
-0000bd24 _LOG_system
-00005fa0 _MCBSP_open
-000058a0 _MCBSP_reset
-000060a0 _MCBSP_start
-0000b46c _MEM_D_NUMSEGMENTS
-0000b474 _MEM_D_freelist
-0000b478 _MEM_D_lockaddr
-0000b470 _MEM_D_memtab
-0000b47c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aaa0 _OBJ_init
-00009268 _OBJ_segtab
-00009230 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b40c _PRD_D_tick
-0000bd74 _PRD_clock
-0000a694 _RTA_dispatcher
-0000bc68 _RTA_fromHost
-0000bc84 _RTA_toHost
-0000a240 _RTDX_Buffer
-0000a64c _RTDX_Buffer_End
-0000a080 _RTDX_Buffer_Initialize
-0000a1c0 _RTDX_Buffer_Read
-0000a0e0 _RTDX_Buffer_ReadCB
-0000a140 _RTDX_Buffer_Size
-0000a648 _RTDX_Buffer_Start
-0000a1e0 _RTDX_Buffer_Write
-000097a0 _RTDX_Buffer_WriteCB
-0000a180 _RTDX_Final_RT_Monitor
-0000a000 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a220 _RTDX_Mask_IER
-00009de0 _RTDX_Mon_Queue
-000093a0 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a65c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bca0 _STS_A_TABBEG
-0000bcd0 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b4a4 _SWI_D_curfxn
-0000b494 _SWI_D_curmask
-0000b498 _SWI_D_curset
-0000b490 _SWI_D_execaddr
-0000b4ac _SWI_D_inswi
-0000b49c _SWI_D_lock
-0000b4a8 _SWI_D_rdybeg
-0000b48c _SWI_D_runaddr
-0000b48c _SWI_data
-00000e50 _SWI_post
-0000b480 _SYS
-0000b600 _SYS_PUTCBEG
-0000b7ff _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009334 _SYS_exitStack
-0000b5dc _SYS_exitStackPtr
-0000b5e0 _SYS_exitStackTop
-0000bd6c _TRC_R_mask
-0000b5d0 _TSK
-000091d4 _TSK_ATTRS
-000091f0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000aa20 _TSK_init
-0000b5c8 _TSK_nTasks
-0000b5cc _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-00009210 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b488 __HOOK_NUMHOOKS
-0000b484 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090f4 __IRQ_dispatchTable
-00009030 __IRQ_eventTable
-00006740 __IRQ_hookFetchPacket
-000090b4 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00009304 __MCBSP_hDev0
-00009308 __MCBSP_hDev1
-000092ac __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009284 __TSK_mutex
-00009378 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006600 ___add_dtor
-00008e80 ___atexit_func_id__
-ffffffff ___binit__
-0000b2c0 ___bss__
-ffffffff ___c_args__
-00006760 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5fe ___end__
-00006760 ___etext__
-0000bd5c ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009370 __cleanup_ptr
-000043c0 __divf
-00009374 __dtors_ptr
-000062a0 __frcmpyf_div
-0000937c __lock
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-0000aec0 __stack
-00005d40 __strasgi
-00009380 __unlock
-000061a0 _atexit
-00007eb8 _b
-0000a960 _c_int00
-00005e80 _call_dtors
-0000938c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-000054a0 _memcpy
-000063fc _mono_read_16Bit
-000063d4 _mono_write_16Bit
-000050e0 _non_circ_fir
-0000b5c0 _rtdxNullChanCnt
-0000b5c4 _rtdxNullFuncCnt
-0000a650 _rtdx_buffer_state
-0000a670 _rtdx_mon_state
-000063a8 _stereo_read_16Bit
-00006380 _stereo_write_16Bit
-00005a40 _wait500nS
-00008690 _x
-ffffffff binit
-00006760 cinit
-00000000 edata
-0000b5fe end
-00006760 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd5c pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050e0 _non_circ_fir
-000051c0 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-000054a0 _memcpy
-000056e0 _IRQ_map
-000058a0 _MCBSP_reset
-00005a40 _wait500nS
-00005a68 GBL_USERINITFXN
-00005a68 _GBL_setPLLto225MHz
-00005bc0 _DSK6713_AIC23_rset
-00005c88 _DSK6713_AIC23_rget
-00005cac _DSK6713_AIC23_config
-00005d40 __strasgi
-00005e80 _call_dtors
-00005fa0 _MCBSP_open
-000060a0 _MCBSP_start
-000061a0 _atexit
-000062a0 __frcmpyf_div
-00006380 _stereo_write_16Bit
-000063a8 _stereo_read_16Bit
-000063d4 _mono_write_16Bit
-000063fc _mono_read_16Bit
-000065c0 _IRQ_enable
-00006600 ___add_dtor
-00006680 _IRQ_globalDisable
-000066a0 _IRQ_globalEnable
-000066c0 _IRQ_nmiEnable
-000066e0 __nop
-00006700 __register_lock
-00006720 __register_unlock
-00006740 __IRQ_hookFetchPacket
-00006760 ___cinit__
-00006760 ___etext__
-00006760 cinit
-00006760 etext
-00007eb8 _b
-00008690 _x
-00008e58 _Config
-00008e80 ___atexit_func_id__
-00009030 __IRQ_eventTable
-000090b4 __IRQ_intTable
-000090f4 __IRQ_dispatchTable
-000090fc _KNL_queues
-0000919c _KNL_dummy
-000091d4 _TSK_ATTRS
-000091f0 _TSK_config
-00009210 _TSK_timerSem
-00009230 _OBJ_table
-00009268 _OBJ_segtab
-00009284 __TSK_mutex
-000092ac __MEM_mutex
-00009304 __MCBSP_hDev0
-00009308 __MCBSP_hDev1
-00009334 _SYS_exitStack
-00009370 __cleanup_ptr
-00009374 __dtors_ptr
-00009378 ___TI_enable_exit_profile_output
-0000937c __lock
-00009380 __unlock
-0000938c _dtors
-00009390 RTA_fromHost$buf
-000093a0 _RTDX_Poll
-000097a0 _RTDX_Buffer_WriteCB
-00009de0 _RTDX_Mon_Queue
-0000a000 _RTDX_Init_RT_Monitor
-0000a080 _RTDX_Buffer_Initialize
-0000a0e0 _RTDX_Buffer_ReadCB
-0000a140 _RTDX_Buffer_Size
-0000a180 _RTDX_Final_RT_Monitor
-0000a1c0 _RTDX_Buffer_Read
-0000a1e0 _RTDX_Buffer_Write
-0000a220 _RTDX_Mask_IER
-0000a240 _RTDX_Buffer
-0000a648 _RTDX_Buffer_Start
-0000a64c _RTDX_Buffer_End
-0000a650 _rtdx_buffer_state
-0000a65c _RTDX_writing
-0000a670 _rtdx_mon_state
-0000a68c IDL_A_TABBEG
-0000a68c IDL_cpuLoad
-0000a68c _IDL_cpuLoad
-0000a690 LNK_dataPump
-0000a690 _LNK_dataPump
-0000a694 RTA_dispatcher
-0000a694 _RTA_dispatcher
-0000a698 IDL_END
-0000a6a0 BIOS_init
-0000a6a0 _BIOS_init
-0000a804 BIOS$$CLKON
-0000a844 BIOS$$CLKOFF
-0000a8ac BIOS_start
-0000a8ac _BIOS_start
-0000a960 _c_int00
-0000aa20 _TSK_init
-0000aaa0 _OBJ_init
-0000aac0 TSK_idle$stack
-0000ae58 TSK_idle$stkptr
-0000aec0 GBL_stackbeg
-0000aec0 _HWI_STKTOP
-0000aec0 __stack
-0000b2b8 _HWI_STKBOTTOM
-0000b2bf GBL_stackend
-0000b2c0 $bss
-0000b2c0 .bss
-0000b2c0 _HWI_dispatchTab
-0000b2c0 ___bss__
-0000b3c0 IDL_D_tabbeg
-0000b3c4 IDL_D_calibrate
-0000b3c8 IDL_D_calbeg
-0000b3cc LOG_D_system
-0000b3cc _LOG_D_system
-0000b3d0 PIP_D_tabbeg
-0000b3d4 PIP_D_tablen
-0000b3d8 CLK_R_time
-0000b3dc CLK_D_timefxn
-0000b3e0 CLK_D_tabbeg
-0000b3e4 CLK_D_isrhook
-0000b3e8 CLK_D_idletime
-0000b3ec _CLK_htimeDiv
-0000b3f0 _CLK_htimeMult
-0000b3f4 _CLK_ltimeDiv
-0000b3f8 _CLK_ltimeMult
-0000b3fc _CLK_D_dirty
-0000b400 _CLK_D_prd
-0000b404 _CLK_D_tddr
-0000b408 _CLK_D_countspms
-0000b40c PRD_D_tick
-0000b40c _PRD_D_tick
-0000b410 PRD_D_cur
-0000b414 PRD_D_elapsed
-0000b418 PRD_D_prevtim
-0000b41c PRD_D_scalar
-0000b420 PRD_D_swihandle
-0000b424 PRD_D_tabbeg
-0000b428 PRD_D_tablen
-0000b42c PRD_D_thook
-0000b430 RTA_D_fromHost
-0000b434 RTA_D_toHost
-0000b438 RTA_D_logval
-0000b448 RTA_D_stsval
-0000b454 HST_D_chanmask
-0000b458 HST_D_tabbeg
-0000b45c HST_D_tabend
-0000b460 _GBL_procId
-0000b464 _GBL_clkIn
-0000b468 _GBL_freq
-0000b46c _MEM_D_NUMSEGMENTS
-0000b470 _MEM_D_memtab
-0000b474 _MEM_D_freelist
-0000b478 _MEM_D_lockaddr
-0000b47c _MEM_D_unlockaddr
-0000b480 _SYS
-0000b484 __HOOK_knlId
-0000b488 __HOOK_NUMHOOKS
-0000b48c SWI_D_runaddr
-0000b48c _SWI_D_runaddr
-0000b48c _SWI_data
-0000b490 SWI_D_execaddr
-0000b490 _SWI_D_execaddr
-0000b494 SWI_D_curmask
-0000b494 _SWI_D_curmask
-0000b498 SWI_D_curset
-0000b498 _SWI_D_curset
-0000b49c SWI_D_lock
-0000b49c _SWI_D_lock
-0000b4a0 SWI_D_curmbox
-0000b4a4 SWI_D_curfxn
-0000b4a4 _SWI_D_curfxn
-0000b4a8 SWI_D_rdybeg
-0000b4a8 _SWI_D_rdybeg
-0000b4ac SWI_D_inswi
-0000b4ac _SWI_D_inswi
-0000b4b0 SWI_D_rdytab
-0000b528 _KNL_wFlag
-0000b52c _KNL_wList
-0000b530 _KNL_alarm
-0000b534 _KNL_setpri
-0000b538 _KNL_inactive
-0000b53c _KNL_priority
-0000b540 _KNL_set
-0000b544 _KNL_curtask
-0000b548 _KNL_prevtask
-0000b54c _KNL_curtime
-0000b550 _KNL_swiptr
-0000b554 _KNL_curqueue
-0000b558 _KNL_maxqueue
-0000b55c _KNL_tswitchfxn
-0000b560 _KNL_tcreatefxn
-0000b564 _KNL_tdeletefxn
-0000b568 _KNL_treadyfxn
-0000b56c _KNL_idlefxn
-0000b570 HWI_D_spsave
-0000b570 _HWI_D_spsave
-0000b570 _HWI_data
-0000b57c _HWI_D_inhwi
-0000b580 HWI_D_bss
-0000b584 HWI_D_ccmask
-0000b588 RTA_fromHost$pipe$dtab
-0000b594 RTA_toHost$pipe$dtab
-0000b5a0 LNK_dspFrameRequestMask
-0000b5a0 _LNK_dspFrameRequestMask
-0000b5a4 LNK_dspFrameReadyMask
-0000b5a4 _LNK_dspFrameReadyMask
-0000b5a8 LNK_readPend
-0000b5a8 _LNK_readPend
-0000b5ac LNK_readDone
-0000b5ac _LNK_readDone
-0000b5b0 LNK_readFail
-0000b5b0 _LNK_readFail
-0000b5b4 LNK_writeFail
-0000b5b4 _LNK_writeFail
-0000b5c0 _rtdxNullChanCnt
-0000b5c4 _rtdxNullFuncCnt
-0000b5c8 _TSK_nTasks
-0000b5cc _TSK_pid
-0000b5d0 _TSK
-0000b5d4 _CLK_DFLTMICROSECS
-0000b5d8 _CLK_D_microseconds
-0000b5dc _SYS_exitStackPtr
-0000b5e0 _SYS_exitStackTop
-0000b5e4 _DSK6713_AIC23_codeccontrolhandle
-0000b5e8 _DSK6713_AIC23_codecdatahandle
-0000b5ec _CLK_htimePerLtime
-0000b5f4 IDL_D_busyObj
-0000b5f8 _H_Codec
-0000b5fc _DSK6713_version
-0000b5fe ___end__
-0000b5fe end
-0000b600 _SYS_PUTCBEG
-0000b7ff _SYS_PUTCEND
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc64 HST_A_TABBEG
-0000bc64 _HST_A_TABBEG
-0000bc68 RTA_fromHost
-0000bc68 _RTA_fromHost
-0000bc70 RTA_fromHost$rtdx
-0000bc84 RTA_toHost
-0000bc84 _RTA_toHost
-0000bc8c RTA_toHost$rtdx
-0000bca0 HST_A_TABEND
-0000bca0 KNL_swi$sts$stsobj
-0000bca0 STS_A_TABBEG
-0000bca0 _HST_A_TABEND
-0000bca0 _STS_A_TABBEG
-0000bca4 KNL_swi$sts
-0000bcb0 TSK_idle$sts$stsobj
-0000bcb4 TSK_idle$sts
-0000bcc0 IDL_busyObj$stsobj
-0000bcc4 IDL_busyObj
-0000bcc4 _IDL_busyObj
-0000bcd0 KNL_swi
-0000bcd0 STS_A_TABEND
-0000bcd0 SWI_A_TABBEG
-0000bcd0 _KNL_swi
-0000bcd0 _STS_A_TABEND
-0000bcfc SWI_A_TABEND
-0000bd24 LOG_A_TABBEG
-0000bd24 LOG_system
-0000bd24 _LOG_A_TABBEG
-0000bd24 _LOG_system
-0000bd3c IDL_A_CALBEG
-0000bd3c IDL_cpuLoad$
-0000bd3c LOG_A_TABEND
-0000bd3c _LOG_A_TABEND
-0000bd40 LNK_dataPump$
-0000bd44 RTA_dispatcher$
-0000bd48 IDL_END$
-0000bd4c SYS$config
-0000bd5c ___pinit__
-0000bd5c pinit
-0000bd68 TRC_cinit
-0000bd6c TRC_R_mask
-0000bd6c _TRC_R_mask
-0000bd70 GBL_initdone
-0000bd74 CLK_A_TABBEG
-0000bd74 PRD_clock
-0000bd74 _PRD_clock
-0000bd78 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[717 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/f04de955e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/f04de955e20100181ce89bcacea45786
deleted file mode 100644
index 5a98d9e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/93/f04de955e20100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:10:07 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/3071a73a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/3071a73a45070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/3071a73a45070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/802691d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/802691d57506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/94/802691d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/703c0fafe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/703c0fafe50100181ce89bcacea45786
deleted file mode 100644
index f04f6ba..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/703c0fafe50100181ce89bcacea45786
+++ /dev/null
@@ -1,1744 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Jan 25 15:13:47 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a120
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000b53b 00034ac5 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00001ba0
- 000043c0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004840 000002e0 : dsk6713_aic23_opencodec.obj (.text)
- 00004b20 000002a0 intio.obj (.text)
- 00004dc0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005000 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000051c0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005360 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 000054e0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005660 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 000057a0 00000120 : sinit.obj (.text:_call_dtors)
- 000058c0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000059c0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00005ac0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00005bc0 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00005ca0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00005d60 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00005e00 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00005e40 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00005e80 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00005ea0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00005ec0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00005ee0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00005f00 00000020 : _lock.obj (.text:__register_lock)
- 00005f20 00000020 : _lock.obj (.text:__register_unlock)
- 00005f40 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00005f60 00001734
- 00005f60 00000800 intio.obj (.cinit)
- 00006760 00000564 dsp_bios_cfg.obj (.cinit)
- 00006cc4 00000004 --HOLE-- [fill = 0]
- 00006cc8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00006f34 00000004 --HOLE-- [fill = 0]
- 00006f38 000001a4 : knl.o67 (.cinit)
- 000070dc 00000004 --HOLE-- [fill = 0]
- 000070e0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 0000720c 00000004 --HOLE-- [fill = 0]
- 00007210 000000b0 bios.a67 : swi.o67 (.cinit)
- 000072c0 00000070 : tsk.o67 (.cinit)
- 00007330 00000060 : tsk_stup.o67 (.cinit)
- 00007390 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 000073ec 00000004 --HOLE-- [fill = 0]
- 000073f0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007444 00000004 --HOLE-- [fill = 0]
- 00007448 0000004c bios.a67 : rta.o67 (.cinit)
- 00007494 00000004 --HOLE-- [fill = 0]
- 00007498 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 000074e4 00000004 --HOLE-- [fill = 0]
- 000074e8 00000034 bios.a67 : hwi.o67 (.cinit)
- 0000751c 00000004 --HOLE-- [fill = 0]
- 00007520 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007550 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 0000757c 00000004 --HOLE-- [fill = 0]
- 00007580 0000002c rts6700.lib : exit.obj (.cinit)
- 000075ac 00000004 --HOLE-- [fill = 0]
- 000075b0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 000075d4 00000004 --HOLE-- [fill = 0]
- 000075d8 0000001c : sys.o67 (.cinit)
- 000075f4 00000004 --HOLE-- [fill = 0]
- 000075f8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007614 00000004 --HOLE-- [fill = 0]
- 00007618 0000001c : atexit.obj (.cinit)
- 00007634 00000004 --HOLE-- [fill = 0]
- 00007638 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007650 0000000c : gbl_setL2CacheMode.o67 (.cinit)
- 0000765c 00000004 --HOLE-- [fill = 0]
- 00007660 0000000c : idl_busy.o67 (.cinit)
- 0000766c 00000004 --HOLE-- [fill = 0]
- 00007670 0000000c : knl_swit.o67 (.cinit)
- 0000767c 00000004 --HOLE-- [fill = 0]
- 00007680 0000000c rts6700.lib : sinit.obj (.cinit)
- 0000768c 00000004 --HOLE-- [fill = 0]
- 00007690 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007694 00000004
- 00007694 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007698 000014c0 UNINITIALIZED
- 00007698 00000fb8 intio.obj (.far)
- 00008650 00000188 rts6700.lib : atexit.obj (.far)
- 000087d8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000088cc 000000d8 bios.a67 : knl.o67 (.far)
- 000089a4 0000005c : tsk.o67 (.far)
- 00008a00 00000054 : obj_init.o67 (.far)
- 00008a54 00000050 : tsk_stup.o67 (.far)
- 00008aa4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 00008adc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00008b04 00000020 bios.a67 : sys.o67 (.far)
- 00008b24 00000010 : knl_tick.o67 (.far)
- 00008b34 0000000c : utl_putc.o67 (.far)
- 00008b40 0000000c rts6700.lib : exit.obj (.far)
- 00008b4c 00000008 : _lock.obj (.far)
- 00008b54 00000004 : sinit.obj (.far)
-
-.clk 0 00008b58 00000008 UNINITIALIZED
- 00008b58 00000008 dsp_bios_cfg.obj (.clk)
-
-.rtdx_text
-* 0 00008b60 00000ea0
- 00008b60 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00008f60 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 000092a0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 000095a0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 000096e0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 000097c0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 00009840 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 000098a0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 00009900 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 00009940 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 00009980 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 000099a0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 000099c0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 000099e0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 00009a00 0000044c UNINITIALIZED
- 00009a00 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 00009e10 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 00009e30 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 00009e4c 00000010 UNINITIALIZED
- 00009e4c 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 00009e60 00000420
- 00009e60 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a120 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a1e0 00000080 : tsk_init.o67 (.sysinit)
- 0000a260 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000a280 00000400 UNINITIALIZED
- 0000a280 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000a680 00000400 UNINITIALIZED
- 0000a680 00000400 --HOLE--
-
-.bss 0 0000aa80 0000033e UNINITIALIZED
- 0000aa80 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000ab80 000000cc : biosdata.o67 (.bss)
- 0000ac4c 0000009c : swi.o67 (.bss)
- 0000ace8 00000048 : knl.o67 (.bss)
- 0000ad30 00000018 : hwi.o67 (.bss)
- 0000ad48 00000018 dsp_bios_cfg.obj (.bss)
- 0000ad60 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000ad78 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000ad88 0000000c bios.a67 : tsk.o67 (.bss)
- 0000ad94 00000008 : clk_data.o67 (.bss)
- 0000ad9c 00000008 : sys.o67 (.bss)
- 0000ada4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000adac 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000adb0 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000adb4 00000004 : idl_busy.o67 (.bss)
- 0000adb8 00000004 intio.obj (.bss)
- 0000adbc 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000adc0 00000200
- 0000adc0 00000200 --HOLE-- [fill = 00000000]
-
-.gblinit 0 0000afc0 00000040
- 0000afc0 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.LOG_system$buf
-* 0 0000b000 00000100 UNINITIALIZED
- 0000b000 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b100 00000100 UNINITIALIZED
- 0000b100 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000b200 000000f9
- 0000b200 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000b24e 00000002 --HOLE-- [fill = 0]
- 0000b250 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000b290 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000b2b3 00000022 : utl_doer.o67 (.const)
- 0000b2d5 00000003 --HOLE-- [fill = 0]
- 0000b2d8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000b2f8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000b2f9 0000003f COPY SECTION
- 0000b2f9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000b2fc 000000c8 UNINITIALIZED
- 0000b2fc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000b3c4 00000060 UNINITIALIZED
- 0000b3c4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.hst 0 0000b424 0000003c UNINITIALIZED
- 0000b424 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000b460 00000030
- 0000b460 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000b490 0000002c UNINITIALIZED
- 0000b490 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000b4bc 00000028
- 0000b4bc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000b4e4 00000018
- 0000b4e4 00000018 dsp_bios_cfg.obj (.log)
-
-.idl 0 0000b4fc 00000010 UNINITIALIZED
- 0000b4fc 00000010 dsp_bios_cfg.obj (.idl)
-
-.idlcal 0 0000b50c 00000010 UNINITIALIZED
- 0000b50c 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000b51c 00000010 UNINITIALIZED
- 0000b51c 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000b52c 0000000c
- 0000b52c 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000b530 00000004 : rtdx_mon.o62 (.pinit)
- 0000b534 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000b538 0000000c
- 0000b538 0000000c bios.a67 : trc.o67 (.trcdata)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000aa80 $bss
-0000aa80 .bss
-00000000 .data
-000043c0 .text
-0000a004 BIOS$$CLKOFF
-00009fc4 BIOS$$CLKON
-00009e60 BIOS_init
-0000a06c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-00008b58 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000aba8 CLK_D_idletime
-0000aba4 CLK_D_isrhook
-0000aba0 CLK_D_tabbeg
-0000ab9c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000ab98 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-00008b5c CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005388 GBL_USERINITFXN
-00000001 GBL_boot
-0000b540 GBL_initdone
-0000a680 GBL_stackbeg
-0000aa7f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000b424 HST_A_TABBEG
-0000b460 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000ac14 HST_D_chanmask
-0000ac18 HST_D_tabbeg
-0000ac1c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000ad40 HWI_D_bss
-0000ad44 HWI_D_ccmask
-0000ad30 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000b50c IDL_A_CALBEG
-0000b4fc IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000adb4 IDL_D_busyObj
-0000ab88 IDL_D_calbeg
-0000ab84 IDL_D_calibrate
-0000ab80 IDL_D_tabbeg
-0000b508 IDL_END
-0000b518 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000b484 IDL_busyObj
-0000b333 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000b32d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000b480 IDL_busyObj$stsobj
-0000b330 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000b4fc IDL_cpuLoad
-0000b50c IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000b490 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000b464 KNL_swi$sts
-0000b309 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000b2f9 KNL_swi$sts$maxfmt
-0000b460 KNL_swi$sts$stsobj
-0000b301 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000b500 LNK_dataPump
-0000b510 LNK_dataPump$
-0000ad64 LNK_dspFrameReadyMask
-0000ad60 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000ad6c LNK_readDone
-0000ad70 LNK_readFail
-0000ad68 LNK_readPend
-00000370 LNK_rrloop
-0000ad74 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b4e4 LOG_A_TABBEG
-0000b4fc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000ab8c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b4e4 LOG_system
-0000b000 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000b2fc PIP_A_TABBEG
-0000b3c4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000ab90 PIP_D_tabbeg
-0000ab94 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000abd0 PRD_D_cur
-0000abd4 PRD_D_elapsed
-0000abd8 PRD_D_prevtim
-0000abdc PRD_D_scalar
-0000abe0 PRD_D_swihandle
-0000abe4 PRD_D_tabbeg
-0000abe8 PRD_D_tablen
-0000abec PRD_D_thook
-0000abcc PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-00008b58 PRD_clock
-00000001 QUE$
-0000abf0 RTA_D_fromHost
-0000abf8 RTA_D_logval
-0000ac08 RTA_D_stsval
-0000abf4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000b504 RTA_dispatcher
-0000b514 RTA_dispatcher$
-00001f28 RTA_execute
-0000b428 RTA_fromHost
-00009e4c RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000b2fc RTA_fromHost$pipe
-0000b32c RTA_fromHost$pipe$aaa
-0000b35c RTA_fromHost$pipe$bbb
-0000ad48 RTA_fromHost$pipe$dtab
-0000b300 RTA_fromHost$pipe$rd
-0000b330 RTA_fromHost$pipe$wr
-0000b430 RTA_fromHost$rtdx
-0000b444 RTA_toHost
-0000b100 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000b360 RTA_toHost$pipe
-0000b390 RTA_toHost$pipe$aaa
-0000b3c0 RTA_toHost$pipe$bbb
-0000ad54 RTA_toHost$pipe$dtab
-0000b364 RTA_toHost$pipe$rd
-0000b394 RTA_toHost$pipe$wr
-0000b44c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000b460 STS_A_TABBEG
-0000b490 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000b490 SWI_A_TABBEG
-0000b4bc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000ac64 SWI_D_curfxn
-0000ac54 SWI_D_curmask
-0000ac60 SWI_D_curmbox
-0000ac58 SWI_D_curset
-0000ac50 SWI_D_execaddr
-0000ac6c SWI_D_inswi
-0000ac5c SWI_D_lock
-0000ac68 SWI_D_rdybeg
-0000ac70 SWI_D_rdytab
-0000ac4c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000b51c SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000b53c TRC_R_mask
-0000b538 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000b3d0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000a280 TSK_idle$stack
-0000a618 TSK_idle$stkptr
-0000b474 TSK_idle$sts
-0000b323 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000b313 TSK_idle$sts$maxfmt
-0000b470 TSK_idle$sts$stsobj
-0000b31b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00009e60 _BIOS_init
-0000a06c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000ad94 _CLK_DFLTMICROSECS
-0000abc8 _CLK_D_countspms
-0000abbc _CLK_D_dirty
-0000ad98 _CLK_D_microseconds
-0000abc0 _CLK_D_prd
-0000abc4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000abac _CLK_htimeDiv
-0000abb0 _CLK_htimeMult
-0000adac _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000abb4 _CLK_ltimeDiv
-0000abb8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008628 _Config
-0000ada4 _DSK6713_AIC23_codeccontrolhandle
-0000ada8 _DSK6713_AIC23_codecdatahandle
-000055cc _DSK6713_AIC23_config
-00004840 _DSK6713_AIC23_openCodec
-000055a8 _DSK6713_AIC23_rget
-000054e0 _DSK6713_AIC23_rset
-00004540 _DSK6713_getVersion
-00004590 _DSK6713_init
-000044ac _DSK6713_rget
-00004498 _DSK6713_rset
-0000adbc _DSK6713_version
-000043c0 _DSK6713_wait
-00004464 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000ac24 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000ac28 _GBL_freq
-00004320 _GBL_getVersion
-0000ac20 _GBL_procId
-00005388 _GBL_setPLLto225MHz
-0000b424 _HST_A_TABBEG
-0000b460 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000ad3c _HWI_D_inhwi
-0000ad30 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000aa78 _HWI_STKBOTTOM
-0000a680 _HWI_STKTOP
-0000ad30 _HWI_data
-00004020 _HWI_disable
-0000aa80 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000adb8 _H_Codec
-0000b484 _IDL_busyObj
-0000b4fc _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00005e00 _IRQ_enable
-00005e80 _IRQ_globalDisable
-00005ea0 _IRQ_globalEnable
-00005000 _IRQ_map
-00005ec0 _IRQ_nmiEnable
-00004ca8 _ISR_AIC
-0000acf0 _KNL_alarm
-00003440 _KNL_check
-0000ad14 _KNL_curqueue
-0000ad04 _KNL_curtask
-0000ad0c _KNL_curtime
-0000896c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000ad2c _KNL_idlefxn
-0000acf8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000ad18 _KNL_maxqueue
-00003aa0 _KNL_post
-0000ad08 _KNL_prevtask
-0000acfc _KNL_priority
-000088cc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000ad00 _KNL_set
-0000acf4 _KNL_setpri
-0000b490 _KNL_swi
-0000ad10 _KNL_swiptr
-00002cec _KNL_switch
-0000ad20 _KNL_tcreatefxn
-0000ad24 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000ad28 _KNL_treadyfxn
-0000ad1c _KNL_tswitchfxn
-0000ace8 _KNL_wFlag
-0000acec _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000b500 _LNK_dataPump
-0000ad64 _LNK_dspFrameReadyMask
-0000ad60 _LNK_dspFrameRequestMask
-0000ad6c _LNK_readDone
-0000ad70 _LNK_readFail
-0000ad68 _LNK_readPend
-0000ad74 _LNK_writeFail
-0000b4e4 _LOG_A_TABBEG
-0000b4fc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000ab8c _LOG_D_system
-00003ea0 _LOG_event
-0000b4e4 _LOG_system
-000058c0 _MCBSP_open
-000051c0 _MCBSP_reset
-000059c0 _MCBSP_start
-0000ac2c _MEM_D_NUMSEGMENTS
-0000ac34 _MEM_D_freelist
-0000ac38 _MEM_D_lockaddr
-0000ac30 _MEM_D_memtab
-0000ac3c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000a260 _OBJ_init
-00008a38 _OBJ_segtab
-00008a00 _OBJ_table
-0000b2fc _PIP_A_TABBEG
-0000b3c4 _PIP_A_TABEND
-0000abcc _PRD_D_tick
-00008b58 _PRD_clock
-0000b504 _RTA_dispatcher
-0000b428 _RTA_fromHost
-0000b444 _RTA_toHost
-00009a00 _RTDX_Buffer
-00009e0c _RTDX_Buffer_End
-00009840 _RTDX_Buffer_Initialize
-00009980 _RTDX_Buffer_Read
-000098a0 _RTDX_Buffer_ReadCB
-00009900 _RTDX_Buffer_Size
-00009e08 _RTDX_Buffer_Start
-000099a0 _RTDX_Buffer_Write
-00008f60 _RTDX_Buffer_WriteCB
-00009940 _RTDX_Final_RT_Monitor
-000097c0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-000099e0 _RTDX_Mask_IER
-000095a0 _RTDX_Mon_Queue
-00008b60 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-00009e1c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000b460 _STS_A_TABBEG
-0000b490 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000ac64 _SWI_D_curfxn
-0000ac54 _SWI_D_curmask
-0000ac58 _SWI_D_curset
-0000ac50 _SWI_D_execaddr
-0000ac6c _SWI_D_inswi
-0000ac5c _SWI_D_lock
-0000ac68 _SWI_D_rdybeg
-0000ac4c _SWI_D_runaddr
-0000ac4c _SWI_data
-00000e50 _SWI_post
-0000ac40 _SYS
-0000adc0 _SYS_PUTCBEG
-0000afbf _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00008b04 _SYS_exitStack
-0000ad9c _SYS_exitStackPtr
-0000ada0 _SYS_exitStackTop
-0000b53c _TRC_R_mask
-0000ad90 _TSK
-000089a4 _TSK_ATTRS
-000089c0 _TSK_config
-00002fa0 _TSK_exit
-0000b3d0 _TSK_idle
-0000a1e0 _TSK_init
-0000ad88 _TSK_nTasks
-0000ad8c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000089e0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000ac48 __HOOK_NUMHOOKS
-0000ac44 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000088c4 __IRQ_dispatchTable
-00008800 __IRQ_eventTable
-00005f40 __IRQ_hookFetchPacket
-00008884 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00008ad4 __MCBSP_hDev0
-00008ad8 __MCBSP_hDev1
-00008a7c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00008a54 __TSK_mutex
-00008b48 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00005e40 ___add_dtor
-00008650 ___atexit_func_id__
-ffffffff ___binit__
-0000aa80 ___bss__
-ffffffff ___c_args__
-00005f60 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000adbe ___end__
-00005f60 ___etext__
-0000b52c ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00008b40 __cleanup_ptr
-00008b44 __dtors_ptr
-00008b4c __lock
-00005ee0 __nop
-00005f00 __register_lock
-00005f20 __register_unlock
-0000a680 __stack
-00005660 __strasgi
-00008b50 __unlock
-00005ac0 _atexit
-00007698 _b
-0000a120 _c_int00
-000057a0 _call_dtors
-00008b54 _dtors
-00004c10 _init_HWI
-00004b4c _init_hardware
-00004b20 _main
-00004dc0 _memcpy
-00005c3c _mono_read_16Bit
-00005c14 _mono_write_16Bit
-00004ce4 _non_circ_fir
-0000ad80 _rtdxNullChanCnt
-0000ad84 _rtdxNullFuncCnt
-00009e10 _rtdx_buffer_state
-00009e30 _rtdx_mon_state
-00005be8 _stereo_read_16Bit
-00005bc0 _stereo_write_16Bit
-00005360 _wait500nS
-00007e60 _x
-ffffffff binit
-00005f60 cinit
-00000000 edata
-0000adbe end
-00005f60 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000b52c pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 _DSK6713_wait
-000043c0 ___text__
-00004464 _DSK6713_waitusec
-00004498 _DSK6713_rset
-000044ac _DSK6713_rget
-00004540 _DSK6713_getVersion
-00004590 _DSK6713_init
-00004840 _DSK6713_AIC23_openCodec
-00004b20 _main
-00004b4c _init_hardware
-00004c10 _init_HWI
-00004ca8 _ISR_AIC
-00004ce4 _non_circ_fir
-00004dc0 _memcpy
-00004e20 GBL_CLKIN
-00005000 _IRQ_map
-000051c0 _MCBSP_reset
-00005205 GBL_A_VERSION
-00005360 _wait500nS
-00005388 GBL_USERINITFXN
-00005388 _GBL_setPLLto225MHz
-000054e0 _DSK6713_AIC23_rset
-000055a8 _DSK6713_AIC23_rget
-000055cc _DSK6713_AIC23_config
-00005660 __strasgi
-000057a0 _call_dtors
-000058c0 _MCBSP_open
-000059c0 _MCBSP_start
-00005ac0 _atexit
-00005bc0 _stereo_write_16Bit
-00005be8 _stereo_read_16Bit
-00005c14 _mono_write_16Bit
-00005c3c _mono_read_16Bit
-00005e00 _IRQ_enable
-00005e40 ___add_dtor
-00005e80 _IRQ_globalDisable
-00005ea0 _IRQ_globalEnable
-00005ec0 _IRQ_nmiEnable
-00005ee0 __nop
-00005f00 __register_lock
-00005f20 __register_unlock
-00005f40 __IRQ_hookFetchPacket
-00005f60 ___cinit__
-00005f60 ___etext__
-00005f60 cinit
-00005f60 etext
-00007698 _b
-00007e60 _x
-00008628 _Config
-00008650 ___atexit_func_id__
-00008800 __IRQ_eventTable
-00008884 __IRQ_intTable
-000088c4 __IRQ_dispatchTable
-000088cc _KNL_queues
-0000896c _KNL_dummy
-000089a4 _TSK_ATTRS
-000089c0 _TSK_config
-000089e0 _TSK_timerSem
-00008a00 _OBJ_table
-00008a38 _OBJ_segtab
-00008a54 __TSK_mutex
-00008a7c __MEM_mutex
-00008ad4 __MCBSP_hDev0
-00008ad8 __MCBSP_hDev1
-00008b04 _SYS_exitStack
-00008b40 __cleanup_ptr
-00008b44 __dtors_ptr
-00008b48 ___TI_enable_exit_profile_output
-00008b4c __lock
-00008b50 __unlock
-00008b54 _dtors
-00008b58 CLK_A_TABBEG
-00008b58 PRD_clock
-00008b58 _PRD_clock
-00008b5c CLK_null
-00008b60 _RTDX_Poll
-00008f60 _RTDX_Buffer_WriteCB
-000095a0 _RTDX_Mon_Queue
-000097c0 _RTDX_Init_RT_Monitor
-00009840 _RTDX_Buffer_Initialize
-000098a0 _RTDX_Buffer_ReadCB
-00009900 _RTDX_Buffer_Size
-00009940 _RTDX_Final_RT_Monitor
-00009980 _RTDX_Buffer_Read
-000099a0 _RTDX_Buffer_Write
-000099e0 _RTDX_Mask_IER
-00009a00 _RTDX_Buffer
-00009e08 _RTDX_Buffer_Start
-00009e0c _RTDX_Buffer_End
-00009e10 _rtdx_buffer_state
-00009e1c _RTDX_writing
-00009e30 _rtdx_mon_state
-00009e4c RTA_fromHost$buf
-00009e60 BIOS_init
-00009e60 _BIOS_init
-00009fc4 BIOS$$CLKON
-0000a004 BIOS$$CLKOFF
-0000a06c BIOS_start
-0000a06c _BIOS_start
-0000a120 _c_int00
-0000a1e0 _TSK_init
-0000a260 _OBJ_init
-0000a280 TSK_idle$stack
-0000a618 TSK_idle$stkptr
-0000a680 GBL_stackbeg
-0000a680 _HWI_STKTOP
-0000a680 __stack
-0000aa78 _HWI_STKBOTTOM
-0000aa7f GBL_stackend
-0000aa80 $bss
-0000aa80 .bss
-0000aa80 _HWI_dispatchTab
-0000aa80 ___bss__
-0000ab80 IDL_D_tabbeg
-0000ab84 IDL_D_calibrate
-0000ab88 IDL_D_calbeg
-0000ab8c LOG_D_system
-0000ab8c _LOG_D_system
-0000ab90 PIP_D_tabbeg
-0000ab94 PIP_D_tablen
-0000ab98 CLK_R_time
-0000ab9c CLK_D_timefxn
-0000aba0 CLK_D_tabbeg
-0000aba4 CLK_D_isrhook
-0000aba8 CLK_D_idletime
-0000abac _CLK_htimeDiv
-0000abb0 _CLK_htimeMult
-0000abb4 _CLK_ltimeDiv
-0000abb8 _CLK_ltimeMult
-0000abbc _CLK_D_dirty
-0000abc0 _CLK_D_prd
-0000abc4 _CLK_D_tddr
-0000abc8 _CLK_D_countspms
-0000abcc PRD_D_tick
-0000abcc _PRD_D_tick
-0000abd0 PRD_D_cur
-0000abd4 PRD_D_elapsed
-0000abd8 PRD_D_prevtim
-0000abdc PRD_D_scalar
-0000abe0 PRD_D_swihandle
-0000abe4 PRD_D_tabbeg
-0000abe8 PRD_D_tablen
-0000abec PRD_D_thook
-0000abf0 RTA_D_fromHost
-0000abf4 RTA_D_toHost
-0000abf8 RTA_D_logval
-0000ac08 RTA_D_stsval
-0000ac14 HST_D_chanmask
-0000ac18 HST_D_tabbeg
-0000ac1c HST_D_tabend
-0000ac20 _GBL_procId
-0000ac24 _GBL_clkIn
-0000ac28 _GBL_freq
-0000ac2c _MEM_D_NUMSEGMENTS
-0000ac30 _MEM_D_memtab
-0000ac34 _MEM_D_freelist
-0000ac38 _MEM_D_lockaddr
-0000ac3c _MEM_D_unlockaddr
-0000ac40 _SYS
-0000ac44 __HOOK_knlId
-0000ac48 __HOOK_NUMHOOKS
-0000ac4c SWI_D_runaddr
-0000ac4c _SWI_D_runaddr
-0000ac4c _SWI_data
-0000ac50 SWI_D_execaddr
-0000ac50 _SWI_D_execaddr
-0000ac54 SWI_D_curmask
-0000ac54 _SWI_D_curmask
-0000ac58 SWI_D_curset
-0000ac58 _SWI_D_curset
-0000ac5c SWI_D_lock
-0000ac5c _SWI_D_lock
-0000ac60 SWI_D_curmbox
-0000ac64 SWI_D_curfxn
-0000ac64 _SWI_D_curfxn
-0000ac68 SWI_D_rdybeg
-0000ac68 _SWI_D_rdybeg
-0000ac6c SWI_D_inswi
-0000ac6c _SWI_D_inswi
-0000ac70 SWI_D_rdytab
-0000ace8 _KNL_wFlag
-0000acec _KNL_wList
-0000acf0 _KNL_alarm
-0000acf4 _KNL_setpri
-0000acf8 _KNL_inactive
-0000acfc _KNL_priority
-0000ad00 _KNL_set
-0000ad04 _KNL_curtask
-0000ad08 _KNL_prevtask
-0000ad0c _KNL_curtime
-0000ad10 _KNL_swiptr
-0000ad14 _KNL_curqueue
-0000ad18 _KNL_maxqueue
-0000ad1c _KNL_tswitchfxn
-0000ad20 _KNL_tcreatefxn
-0000ad24 _KNL_tdeletefxn
-0000ad28 _KNL_treadyfxn
-0000ad2c _KNL_idlefxn
-0000ad30 HWI_D_spsave
-0000ad30 _HWI_D_spsave
-0000ad30 _HWI_data
-0000ad3c _HWI_D_inhwi
-0000ad40 HWI_D_bss
-0000ad44 HWI_D_ccmask
-0000ad48 RTA_fromHost$pipe$dtab
-0000ad54 RTA_toHost$pipe$dtab
-0000ad60 LNK_dspFrameRequestMask
-0000ad60 _LNK_dspFrameRequestMask
-0000ad64 LNK_dspFrameReadyMask
-0000ad64 _LNK_dspFrameReadyMask
-0000ad68 LNK_readPend
-0000ad68 _LNK_readPend
-0000ad6c LNK_readDone
-0000ad6c _LNK_readDone
-0000ad70 LNK_readFail
-0000ad70 _LNK_readFail
-0000ad74 LNK_writeFail
-0000ad74 _LNK_writeFail
-0000ad80 _rtdxNullChanCnt
-0000ad84 _rtdxNullFuncCnt
-0000ad88 _TSK_nTasks
-0000ad8c _TSK_pid
-0000ad90 _TSK
-0000ad94 _CLK_DFLTMICROSECS
-0000ad98 _CLK_D_microseconds
-0000ad9c _SYS_exitStackPtr
-0000ada0 _SYS_exitStackTop
-0000ada4 _DSK6713_AIC23_codeccontrolhandle
-0000ada8 _DSK6713_AIC23_codecdatahandle
-0000adac _CLK_htimePerLtime
-0000adb4 IDL_D_busyObj
-0000adb8 _H_Codec
-0000adbc _DSK6713_version
-0000adbe ___end__
-0000adbe end
-0000adc0 _SYS_PUTCBEG
-0000afbf _SYS_PUTCEND
-0000b000 LOG_system$buf
-0000b100 RTA_toHost$buf
-0000b2f9 KNL_swi$sts$maxfmt
-0000b2fc PIP_A_TABBEG
-0000b2fc RTA_fromHost$pipe
-0000b2fc _PIP_A_TABBEG
-0000b300 RTA_fromHost$pipe$rd
-0000b301 KNL_swi$sts$sumfmt
-0000b309 KNL_swi$sts$avgfmt
-0000b313 TSK_idle$sts$maxfmt
-0000b31b TSK_idle$sts$sumfmt
-0000b323 TSK_idle$sts$avgfmt
-0000b32c RTA_fromHost$pipe$aaa
-0000b32d IDL_busyObj$maxfmt
-0000b330 IDL_busyObj$sumfmt
-0000b330 RTA_fromHost$pipe$wr
-0000b333 IDL_busyObj$avgfmt
-0000b35c RTA_fromHost$pipe$bbb
-0000b360 RTA_toHost$pipe
-0000b364 RTA_toHost$pipe$rd
-0000b390 RTA_toHost$pipe$aaa
-0000b394 RTA_toHost$pipe$wr
-0000b3c0 RTA_toHost$pipe$bbb
-0000b3c4 PIP_A_TABEND
-0000b3c4 _PIP_A_TABEND
-0000b3d0 TSK_idle
-0000b3d0 _TSK_idle
-0000b424 HST_A_TABBEG
-0000b424 _HST_A_TABBEG
-0000b428 RTA_fromHost
-0000b428 _RTA_fromHost
-0000b430 RTA_fromHost$rtdx
-0000b444 RTA_toHost
-0000b444 _RTA_toHost
-0000b44c RTA_toHost$rtdx
-0000b460 HST_A_TABEND
-0000b460 KNL_swi$sts$stsobj
-0000b460 STS_A_TABBEG
-0000b460 _HST_A_TABEND
-0000b460 _STS_A_TABBEG
-0000b464 KNL_swi$sts
-0000b470 TSK_idle$sts$stsobj
-0000b474 TSK_idle$sts
-0000b480 IDL_busyObj$stsobj
-0000b484 IDL_busyObj
-0000b484 _IDL_busyObj
-0000b490 KNL_swi
-0000b490 STS_A_TABEND
-0000b490 SWI_A_TABBEG
-0000b490 _KNL_swi
-0000b490 _STS_A_TABEND
-0000b4bc SWI_A_TABEND
-0000b4e4 LOG_A_TABBEG
-0000b4e4 LOG_system
-0000b4e4 _LOG_A_TABBEG
-0000b4e4 _LOG_system
-0000b4fc IDL_A_TABBEG
-0000b4fc IDL_cpuLoad
-0000b4fc LOG_A_TABEND
-0000b4fc _IDL_cpuLoad
-0000b4fc _LOG_A_TABEND
-0000b500 LNK_dataPump
-0000b500 _LNK_dataPump
-0000b504 RTA_dispatcher
-0000b504 _RTA_dispatcher
-0000b508 IDL_END
-0000b50c IDL_A_CALBEG
-0000b50c IDL_cpuLoad$
-0000b510 LNK_dataPump$
-0000b514 RTA_dispatcher$
-0000b518 IDL_END$
-0000b51c SYS$config
-0000b52c ___pinit__
-0000b52c pinit
-0000b538 TRC_cinit
-0000b53c TRC_R_mask
-0000b53c _TRC_R_mask
-0000b540 GBL_initdone
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[715 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c045f26bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c045f26bdd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c045f26bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c05cef24610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c05cef24610b001815de8ca47440e6f8
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/95/c05cef24610b001815de8ca47440e6f8
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/605c464c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/605c464c7506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/605c464c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/709c890d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/709c890d7606001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/709c890d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0d03d4c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0d03d4c7506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/e0d03d4c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/f065bd50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/f065bd50dd0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/97/f065bd50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/602c1b167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/602c1b167506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/602c1b167506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/e07e1e2ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/e07e1e2ee10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/e07e1e2ee10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/f0b5db7a44070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/f0b5db7a44070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/98/f0b5db7a44070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/d08ebc4ae50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/d08ebc4ae50100181ce89bcacea45786
deleted file mode 100644
index ff39b72..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/d08ebc4ae50100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
-// for (i = N-1; i > 0; i--) {
-// x[i] = x[i-1];
-// }
-// x[0] = (float) sample_in / 32767.f;
-//
-// sample_out = non_circ_fir();
-//
-// mono_write_16Bit(sample_out);
- mono_write_16Bit(sample_in);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/e0e4d0c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/e0e4d0c9e10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/99/e0e4d0c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80a79679cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80a79679cd0100181ce89bcacea45786
deleted file mode 100644
index b64159c..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9b/80a79679cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,1091 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "Tue Jan 23 11:15:03 2018", VERS$DATE
-
-;; PROLOGUE
- .include dsp_bios_cfg.h62
- .copy confbeg.s62
-
-;; TYPE HEADERS
- .include gbl.h62
- .include mem.h62
- .include obj.h62
- .include buf.h62
- .include pool.h62
- .include clk.h62
- .include prd.h62
- .include rtdx.h62
- .include hst.h62
- .include hwi.h62
- .include swi.h62
- .include tsk.h62
- .include idl.h62
- .include isrc.h62
- .include log.h62
- .include pip.h62
- .include sem.h62
- .include mbx.h62
- .include que.h62
- .include lck.h62
- .include sts.h62
- .include sys.h62
- .include sio.h62
- .include gio.h62
- .include dev.h62
- .include udev.h62
- .include dio.h62
- .include dgn.h62
- .include dhl.h62
- .include dpi.h62
- .include msgq.h62
- .include hook.h62
-
-;; TYPE ATTRIBUTES
-MEM$NUMOF .set 2
-MEM$SETOF .set 00H
-OBJ$NUMOF .set 0
-OBJ$SETOF .set 00H
-BUF$NUMOF .set 0
-BUF$SETOF .set 00H
-CLK$NUMOF .set 1
-CLK$SETOF .set 00H
-PRD$NUMOF .set 0
-PRD$SETOF .set 00H
-RTDX$NUMOF .set 0
-RTDX$SETOF .set 00H
-HST$NUMOF .set 2
-HST$SETOF .set 03H
-HWI$NUMOF .set 16
-HWI$SETOF .set 0ffffH
-SWI$NUMOF .set 1
-SWI$SETOF .set 00H
-TSK$NUMOF .set 1
-TSK$SETOF .set 00H
-IDL$NUMOF .set 3
-IDL$SETOF .set 00H
-ISRC$NUMOF .set 0
-ISRC$SETOF .set 00H
-LOG$NUMOF .set 1
-LOG$SETOF .set 00H
-PIP$NUMOF .set 0
-PIP$SETOF .set 00H
-SEM$NUMOF .set 0
-SEM$SETOF .set 00H
-MBX$NUMOF .set 0
-MBX$SETOF .set 00H
-QUE$NUMOF .set 0
-QUE$SETOF .set 00H
-LCK$NUMOF .set 0
-LCK$SETOF .set 00H
-STS$NUMOF .set 1
-STS$SETOF .set 00H
-SIO$NUMOF .set 0
-SIO$SETOF .set 00H
-DEV$NUMOF .set 0
-DEV$SETOF .set 00H
-UDEV$NUMOF .set 0
-UDEV$SETOF .set 00H
-DIO$NUMOF .set 0
-DIO$SETOF .set 00H
-DGN$NUMOF .set 0
-DGN$SETOF .set 00H
-DHL$NUMOF .set 0
-DHL$SETOF .set 00H
-DPI$NUMOF .set 0
-DPI$SETOF .set 00H
-HOOK$NUMOF .set 0
-HOOK$SETOF .set 00H
-
-;; module GBL (ROM, PROCID, CLKIN, FREQ, DSPTYPE, DSPSUBTYPE, CLKTYPE, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC)
- .global GBL$ ; == 1
- .global GBL_ROM ; dsp_bios_cfg.h62
- .global GBL_PROCID ; dsp_bios_cfg.h62
- .global GBL_CLKIN ; dsp_bios_cfg.h62
- .global GBL_FREQ ; dsp_bios_cfg.h62
- .global GBL_DSPTYPE ; dsp_bios_cfg.h62
- .global GBL_DSPSUBTYPE ; dsp_bios_cfg.h62
- .global GBL_CLKTYPE ; dsp_bios_cfg.h62
- .global GBL_BIGENDIAN ; dsp_bios_cfg.h62
- .global GBL_USERINIT ; dsp_bios_cfg.h62
- .global GBL_USERINITFXN ; dsp_bios_cfg.cmd
- .global GBL_ENABLEINST ; dsp_bios_cfg.h62
- .global GBL_CACHE ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGURE ; dsp_bios_cfg.h62
- .global GBL_L2MODE ; dsp_bios_cfg.h62
- .global GBL_L2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK ; dsp_bios_cfg.h62
- .global GBL_SUPPORTCSL ; dsp_bios_cfg.h62
- .global GBL_TRCMASKVALUE ; dsp_bios_cfg.h62
- .global GBL_CALLCSLCFGINIT ; dsp_bios_cfg.h62
- .global GBL_C641XL2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK1 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK2 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK3 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK4 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK5 ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGALLOC ; dsp_bios_cfg.h62
- .global GBL_L2ALLOC ; dsp_bios_cfg.h62
-
-;; module MEM (gNumHeap, SEGZERO, MALLOCSEG, USEMPC)
- .global MEM$ ; == 1
- .global MEM_gNumHeap ; dsp_bios_cfg.h62
- .global MEM_SEGZERO ; dsp_bios_cfg.cmd
- .global MEM_MALLOCSEG ; dsp_bios_cfg.cmd
- .global MEM_USEMPC ; dsp_bios_cfg.h62
-
-;; module OBJ ()
- .global OBJ$ ; == 0
-
-;; module BUF (ENABLED)
- .global BUF$ ; == 0
- .global BUF_ENABLED ; dsp_bios_cfg.h62
-
-;; module POOL (USEPOOL)
- .global POOL$ ; == 0
- .global POOL_USEPOOL ; dsp_bios_cfg.h62
-
-;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, MICROSECS, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN, CALDIV, CALMULT, HTIMEDIV, HTIMEMULT, LTIMEDIV, LTIMEMULT, HTIMEPERLTIME)
- .global CLK$ ; == 1
- .global CLK_INTBIT ; dsp_bios_cfg.h62
- .global CLK_REGS ; dsp_bios_cfg.h62
- .global CLK_TIMERNUM ; dsp_bios_cfg.h62
- .global CLK_USETIMER ; dsp_bios_cfg.h62
- .global CLK_MICROSECS ; dsp_bios_cfg.h62
- .global CLK_TCR ; dsp_bios_cfg.h62
- .global CLK_TDDR ; dsp_bios_cfg.h62
- .global CLK_TDDRHIGH ; dsp_bios_cfg.h62
- .global CLK_PRD ; dsp_bios_cfg.h62
- .global CLK_PRDHIGH ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMS ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMSHIGH ; dsp_bios_cfg.h62
- .global CLK_TIMEFXN ; dsp_bios_cfg.cmd
- .global CLK_HOOKFXN ; dsp_bios_cfg.cmd
- .global CLK_CALDIV ; dsp_bios_cfg.h62
- .global CLK_CALMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_HTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_LTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_LTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEPERLTIME ; dsp_bios_cfg.h62
-
-;; module PRD (SCALAR, THOOKFXN)
- .global PRD$ ; == 1
- .global PRD_SCALAR ; dsp_bios_cfg.h62
- .global PRD_THOOKFXN ; dsp_bios_cfg.cmd
-
-;; module RTDX (USERTDX, USERTEXECUTION, RTDXTYPE, DATAMEMSEG, BUFMEMSIZE)
- .global RTDX$ ; == 1
- .global RTDX_USERTDX ; dsp_bios_cfg.h62
- .global RTDX_USERTEXECUTION ; dsp_bios_cfg.h62
- .global RTDX_RTDXTYPE ; dsp_bios_cfg.h62
- .global RTDX_DATAMEMSEG ; dsp_bios_cfg.cmd
- .global RTDX_BUFMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE)
- .global HST$ ; == 1
- .global HST_RTDX ; dsp_bios_cfg.h62
- .global HST_DSM ; dsp_bios_cfg.h62
- .global HST_NONE ; dsp_bios_cfg.h62
- .global HST_MAXFRAMESET ; dsp_bios_cfg.h62
- .global HST_MAXFRAMEALLOWED ; dsp_bios_cfg.h62
- .global HST_DSMBUFSEG ; dsp_bios_cfg.cmd
- .global HST_DSMMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH, CFGDISPATCHED)
- .global HWI$ ; == 1
- .global HWI_ZEROTAB ; dsp_bios_cfg.h62
- .global HWI_GENERATE_RESET_VEC ; dsp_bios_cfg.h62
- .global HWI_POLARITYMASK ; dsp_bios_cfg.h62
- .global HWI_INTRMULTLOW ; dsp_bios_cfg.h62
- .global HWI_INTRMULTHIGH ; dsp_bios_cfg.h62
- .global HWI_CFGDISPATCHED ; dsp_bios_cfg.h62
-
-;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN)
- .global SWI$ ; == 1
- .global SWI_EHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_IHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_EXECFXN ; dsp_bios_cfg.cmd
- .global SWI_RUNFXN ; dsp_bios_cfg.cmd
-
-;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS)
- .global TSK$ ; == 1
- .global TSK_STACKSIZE ; dsp_bios_cfg.h62
- .global TSK_STACKSEG ; dsp_bios_cfg.cmd
- .global TSK_PRIORITY ; dsp_bios_cfg.h62
- .global TSK_VCREATEFXN ; dsp_bios_cfg.cmd
- .global TSK_VDELETEFXN ; dsp_bios_cfg.cmd
- .global TSK_VEXITFXN ; dsp_bios_cfg.cmd
- .global TSK_SWITCHFXN ; dsp_bios_cfg.h62
- .global TSK_READYFXN ; dsp_bios_cfg.h62
- .global TSK_NUM_HOOKS ; dsp_bios_cfg.h62
-
-;; module IDL (USECLKIDLTIME, CALIBRFXN, CALIBRERROR)
- .global IDL$ ; == 1
- .global IDL_USECLKIDLTIME ; dsp_bios_cfg.h62
- .global IDL_CALIBRFXN ; dsp_bios_cfg.cmd
- .global IDL_CALIBRERROR ; dsp_bios_cfg.h62
-
-;; module ISRC ()
- .global ISRC$ ; == 1
-
-;; module LOG (ENABLED)
- .global LOG$ ; == 1
- .global LOG_ENABLED ; dsp_bios_cfg.h62
-
-;; module PIP (gNumEmbed, gNextId, OBJSIZE)
- .global PIP$ ; == 0
- .global PIP_gNumEmbed ; dsp_bios_cfg.h62
- .global PIP_gNextId ; dsp_bios_cfg.h62
- .global PIP_OBJSIZE ; dsp_bios_cfg.h62
-
-;; module SEM ()
- .global SEM$ ; == 0
-
-;; module MBX ()
- .global MBX$ ; == 0
-
-;; module QUE ()
- .global QUE$ ; == 1
-
-;; module LCK ()
- .global LCK$ ; == 1
-
-;; module STS ()
- .global STS$ ; == 1
-
-;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
- .global SYS$ ; == 1
- .global SYS_ABORTFXN ; dsp_bios_cfg.cmd
- .global SYS_ERRORFXN ; dsp_bios_cfg.cmd
- .global SYS_EXITFXN ; dsp_bios_cfg.cmd
- .global SYS_PUTCFXN ; dsp_bios_cfg.cmd
-
-;; module SIO ()
- .global SIO$ ; == 0
-
-;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN)
- .global GIO$ ; == 0
- .global GIO_CREATEFXN ; dsp_bios_cfg.cmd
- .global GIO_DELETEFXN ; dsp_bios_cfg.cmd
- .global GIO_PENDFXN ; dsp_bios_cfg.cmd
- .global GIO_POSTFXN ; dsp_bios_cfg.cmd
-
-;; module DEV ()
- .global DEV$ ; == 0
-
-;; module UDEV ()
- .global UDEV$ ; == 0
-
-;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE)
- .global DIO$ ; == 0
- .global DIO_STATIC ; dsp_bios_cfg.h62
- .global DIO_NUMTSKBASE ; dsp_bios_cfg.h62
- .global DIO_NUMSWIBASE ; dsp_bios_cfg.h62
-
-;; module DGN ()
- .global DGN$ ; == 0
-
-;; module DHL (gChannelsAvailable)
- .global DHL$ ; == 0
- .global DHL_gChannelsAvailable ; dsp_bios_cfg.h62
-
-;; module DPI ()
- .global DPI$ ; == 0
-
-;; module MSGQ (USEMSGQ)
- .global MSGQ$ ; == 0
- .global MSGQ_USEMSGQ ; dsp_bios_cfg.h62
-
-;; module HOOK (KNLID)
- .global HOOK$ ; == 0
- .global HOOK_KNLID ; dsp_bios_cfg.h62
-
-;; MODULE CONFIGURATION
-
-;; ======== GBL_config ========
- .asg 00H, _ROM
- .asg 00H, _PROCID
- .asg 04e20H, _CLKIN
- .asg 036ee8H, _FREQ
- .asg 03eH, _DSPTYPE
- .asg 01a39H, _DSPSUBTYPE
- .asg 01770H, _CLKTYPE
- .asg 00H, _BIGENDIAN
- .asg 01H, _USERINIT
- .asg _GBL_setPLLto225MHz, _USERINITFXN
- .asg 01H, _ENABLEINST
- .asg 00H, _CACHE
- .asg 01H, _L2CONFIGURE
- .asg 00H, _L2MODE
- .asg 00H, _L2PRIORITY
- .asg 01H, _L2MARMASK
- .asg 00H, _SUPPORTCSL
- .asg 0dbefH, _TRCMASKVALUE
- .asg 01H, _CALLCSLCFGINIT
- .asg 00H, _C641XL2PRIORITY
- .asg 00H, _L2MARMASK1
- .asg 00H, _L2MARMASK2
- .asg 00H, _L2MARMASK3
- .asg 00H, _L2MARMASK4
- .asg 00H, _L2MARMASK5
- .asg 00H, _L2CONFIGALLOC
- .asg 02226H, _L2ALLOC
- GBL_config _ROM, _PROCID, _CLKIN, _FREQ, _DSPTYPE, _DSPSUBTYPE, _CLKTYPE, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC
-
-;; ======== MEM_config ========
- .asg 00H, _gNumHeap
- .asg MEM_NULL, _SEGZERO
- .asg MEM_NULL, _MALLOCSEG
- .asg 00H, _USEMPC
- MEM_config _gNumHeap, _SEGZERO, _MALLOCSEG, _USEMPC
-
-;; ======== OBJ_config ========
- OBJ_config
-
-;; ======== BUF_config ========
- .asg 01H, _ENABLED
- BUF_config _ENABLED
-
-;; ======== POOL_config ========
- .asg 00H, _USEPOOL
- POOL_config _USEPOOL
-
-;; ======== CLK_config ========
- .asg 04000H, _INTBIT
- .asg 01940000H, _REGS
- .asg 00H, _TIMERNUM
- .asg 01H, _USETIMER
- .asg 03e8H, _MICROSECS
- .asg 020H, _TCR
- .asg 00H, _TDDR
- .asg 00H, _TDDRHIGH
- .asg 0dbbaH, _PRD
- .asg 00H, _PRDHIGH
- .asg 0dbbaH, _COUNTSPMS
- .asg 00H, _COUNTSPMSHIGH
- .asg CLK_F_getshtime, _TIMEFXN
- .asg HWI_F_dispatch, _HOOKFXN
- .asg 01H, _CALDIV
- .asg 04H, _CALMULT
- .asg 01H, _HTIMEDIV
- .asg 04H, _HTIMEMULT
- .asg 01H, _LTIMEDIV
- .asg 036ee8H, _LTIMEMULT
- .asg 0dbbaH, _HTIMEPERLTIME
- CLK_config _INTBIT, _REGS, _TIMERNUM, _USETIMER, _MICROSECS, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN, _CALDIV, _CALMULT, _HTIMEDIV, _HTIMEMULT, _LTIMEDIV, _LTIMEMULT, _HTIMEPERLTIME
-
-;; ======== PRD_config ========
- .asg 04000H, _SCALAR
- .asg _KNL_tick, _THOOKFXN
- PRD_config _SCALAR, _THOOKFXN
-
-;; ======== RTDX_config ========
- .asg 01H, _USERTDX
- .asg 00H, _USERTEXECUTION
- .asg "JTAG", _RTDXTYPE
- .asg IRAM, _DATAMEMSEG
- .asg 0408H, _BUFMEMSIZE
- RTDX_config _USERTDX, _USERTEXECUTION, _RTDXTYPE, _DATAMEMSEG, _BUFMEMSIZE
-
-;; ======== HST_config ========
- .asg 01H, _RTDX
- .asg 00H, _DSM
- .asg 00H, _NONE
- .asg 040H, _MAXFRAMESET
- .asg 0ffH, _MAXFRAMEALLOWED
- .asg IRAM, _DSMBUFSEG
- .asg 0400H, _DSMMEMSIZE
- HST_config _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE
-
-;; ======== HWI_config ========
- .asg 01H, _ZEROTAB
- .asg 00H, _GENERATE_RESET_VEC
- .asg 00H, _POLARITYMASK
- .asg 0310718aeH, _INTRMULTLOW
- .asg 082039a3H, _INTRMULTHIGH
- .asg 04018H, _CFGDISPATCHED
- HWI_config _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH, _CFGDISPATCHED
-
-;; ======== SWI_config ========
- .asg GBL_NULL, _EHOOKFXN
- .asg GBL_NULL, _IHOOKFXN
- .asg SWI_F_exec, _EXECFXN
- .asg SWI_F_run, _RUNFXN
- SWI_config _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN
-
-;; ======== TSK_config ========
- .asg 0400H, _STACKSIZE
- .asg MEM_NULL, _STACKSEG
- .asg 01H, _PRIORITY
- .asg _FXN_F_nop, _VCREATEFXN
- .asg _FXN_F_nop, _VDELETEFXN
- .asg _FXN_F_nop, _VEXITFXN
- .asg 00H, _SWITCHFXN
- .asg 00H, _READYFXN
- .asg 00H, _NUM_HOOKS
- TSK_config _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS
-
-;; ======== IDL_config ========
- .asg 01H, _USECLKIDLTIME
- .asg IDL_F_stub, _CALIBRFXN
- .asg 06H, _CALIBRERROR
- IDL_config _USECLKIDLTIME, _CALIBRFXN, _CALIBRERROR
-
-;; ======== ISRC_config ========
- ISRC_config
-
-;; ======== LOG_config ========
- .asg 01H, _ENABLED
- LOG_config _ENABLED
-
-;; ======== PIP_config ========
- .asg 02H, _gNumEmbed
- .asg 00H, _gNextId
- .asg 064H, _OBJSIZE
- PIP_config _gNumEmbed, _gNextId, _OBJSIZE
-
-;; ======== SEM_config ========
- SEM_config
-
-;; ======== MBX_config ========
- MBX_config
-
-;; ======== QUE_config ========
- QUE_config
-
-;; ======== LCK_config ========
- LCK_config
-
-;; ======== STS_config ========
- STS_config
-
-;; ======== SYS_config ========
- .asg _UTL_doAbort, _ABORTFXN
- .asg _UTL_doError, _ERRORFXN
- .asg _UTL_halt, _EXITFXN
- .asg _UTL_doPutc, _PUTCFXN
- SYS_config _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN
-
-;; ======== SIO_config ========
- SIO_config
-
-;; ======== GIO_config ========
- .asg _FXN_F_nop, _CREATEFXN
- .asg _FXN_F_nop, _DELETEFXN
- .asg _FXN_F_nop, _PENDFXN
- .asg _FXN_F_nop, _POSTFXN
- GIO_config _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN
-
-;; ======== DEV_config ========
- DEV_config
-
-;; ======== UDEV_config ========
- UDEV_config
-
-;; ======== DIO_config ========
- .asg 00H, _STATIC
- .asg 00H, _NUMTSKBASE
- .asg 00H, _NUMSWIBASE
- DIO_config _STATIC, _NUMTSKBASE, _NUMSWIBASE
-
-;; ======== DGN_config ========
- DGN_config
-
-;; ======== DHL_config ========
- .asg 00H, _gChannelsAvailable
- DHL_config _gChannelsAvailable
-
-;; ======== DPI_config ========
- DPI_config
-
-;; ======== MSGQ_config ========
- .asg 00H, _USEMSGQ
- MSGQ_config _USEMSGQ
-
-;; ======== HOOK_config ========
- .asg 00H, _KNLID
- HOOK_config _KNLID
-
-;; ======== MEM_Obj SDRAM ========
-;; This object defines 8MB for the DSP's off-chip memory
-;;
-;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global SDRAM
- .asg 0800000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== MEM_Obj IRAM ========
-;; Internal L2 memory
-;;
-;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global IRAM
- .asg 040000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== CLK_Obj PRD_clock ========
-;; This clock function calls PRD_tick from within the on-chip timer ISR
-;;
-;; CLK_Obj PRD_clock (function)
- .global PRD_clock
- .asg PRD_F_tick, _function
- CLK_Obj 1, PRD_clock, 0, _function
-
-;; ======== HST_Obj RTA_fromHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_fromHost
- .asg "input", _mode
- .asg "<NULL>", _buf
- .asg 04H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HST_Obj RTA_toHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_toHost
- .asg "output", _mode
- .asg "<NULL>", _buf
- .asg 040H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HWI_Obj HWI_RESET ========
-;; defines function for the RESET ISR
-;;
-;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESET
- .asg _c_int00, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_NMI ========
-;; defines function for the NMI ISR
-;;
-;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_NMI
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED0 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED0
- .asg RESERVED, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 04H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED1 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED1
- .asg _RTDX_Poll, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT4 ========
-;; defines the INT4 Interrupt
-;;
-;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT4
- .asg _ISR_AIC, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 010H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT5 ========
-;; defines the INT5 Interrupt
-;;
-;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT5
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 020H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT6 ========
-;; defines the INT6 Interrupt
-;;
-;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT6
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 040H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT7 ========
-;; defines the INT7 Interrupt
-;;
-;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT7
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 080H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT8 ========
-;; defines the INT8 Interrupt
-;;
-;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT8
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0100H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT9 ========
-;; defines the INT9 Interrupt
-;;
-;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT9
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0200H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT10 ========
-;; defines the INT10 Interrupt
-;;
-;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT10
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0400H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT11 ========
-;; defines the INT11 Interrupt
-;;
-;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT11
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0800H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT12 ========
-;; defines the INT12 Interrupt
-;;
-;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT12
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT13 ========
-;; defines the INT13 Interrupt
-;;
-;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT13
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT14 ========
-;; defines the INT14 Interrupt
-;;
-;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT14
- .asg CLK_F_isr, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "CLK", _client
- .asg 01H, _iUseDispatcher
- .asg CLK_A_TABBEG, _iArg
- .asg 04000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT15 ========
-;; defines the INT15 Interrupt
-;;
-;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT15
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== SWI_Obj KNL_swi ========
-;; This Software Interrupt calls the TSK scheduler
-;;
-;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global KNL_swi
- .asg _KNL_run, _function
- .asg 00H, _pri
- .asg 00H, _mailbox
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg 01H, _dorta
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== TSK_Obj TSK_idle ========
-;; This is the idle task; it only runs when no other task is ready
-;;
-;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global TSK_idle
- .asg IDL_F_loop, _iFXN
- .asg 00H, _iARG0
- .asg 00H, _iARG1
- .asg 00H, _iARG2
- .asg 00H, _iARG3
- .asg 00H, _iARG4
- .asg 00H, _iARG5
- .asg 00H, _iARG6
- .asg 00H, _iARG7
- .asg 01H, _iAUTOSTK
- .asg null, _iMANSTK
- .asg 0400H, _iSTKSZ
- .asg IRAM, _iSTKSEG
- .asg 00H, _iPRI
- .asg 00H, _iENV
- .asg 01H, _iEXITFLAG
- .asg 00H, _iUSETSKNAME
- .asg 00H, _iSTATREG
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== IDL_Obj IDL_cpuLoad ========
-;; This object is required by the system to acquire CPU load data
-;;
-;; IDL_Obj IDL_cpuLoad (function, calibration)
- .global IDL_cpuLoad
- .asg IDL_F_busy, _function
- .asg 01H, _calibration
- IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration
-
-;; ======== IDL_Obj LNK_dataPump ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj LNK_dataPump (function, calibration)
- .global LNK_dataPump
- .asg LNK_F_dataPump, _function
- .asg 01H, _calibration
- IDL_Obj 1, LNK_dataPump, 0, _function, _calibration
-
-;; ======== IDL_Obj RTA_dispatcher ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj RTA_dispatcher (function, calibration)
- .global RTA_dispatcher
- .asg RTA_F_dispatch, _function
- .asg 01H, _calibration
- IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration
-
-;; ======== LOG_Obj LOG_system ========
-;; This object is required by the system to accumulate execution trace information
-;;
-;; LOG_Obj LOG_system (bufseg, buflen, logtype, iType, iFormat)
- .global LOG_system
- .asg IRAM, _bufseg
- .asg 040H, _buflen
- .asg "circular", _logtype
- .asg "system", _iType
- .asg "0x%x, 0x%x, 0x%x", _iFormat
- LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype, _iType, _iFormat
-
-;; ======== STS_Obj IDL_busyObj ========
-;; This object is required by the system to accumulate CPU load statistics
-;;
-;; STS_Obj IDL_busyObj (prev, filter, maxformat, sumformat, avgformat, op, uType, iA, iB, iC, prevlow)
- .global IDL_busyObj
- .asg 00H, _prev
- .asg 01H, _filter
- .asg "%g", _maxformat
- .asg "%g", _sumformat
- .asg "%.2f", _avgformat
- .asg 00H, _op
- .asg 02H, _uType
- .asg 01H, _iA
- .asg 00H, _iB
- .asg 01H, _iC
- .asg 00H, _prevlow
- STS_Obj 1, IDL_busyObj, 0, _prev, _filter, _maxformat, _sumformat, _avgformat, _op, _uType, _iA, _iB, _iC, _prevlow
-
-;; MODULE INITIALIZATION
- .sect ".sysinit"
- .global BIOS_init, _BIOS_init
-BIOS_init:
-_BIOS_init:
- GBL_preamble
- GBL_init
- SEM_init
- MEM_init
- OBJ_init
- BUF_init
- POOL_init
- CLK_init
- PRD_init
- RTDX_init
- IDL_init
- LCK_init
- LOG_init
- MBX_init
- PIP_init
- QUE_init
- STS_init
- SYS_init
- HWI_init
- HST_init
- DEV_init
- UDEV_init
- DIO_init
- DGN_init
- DHL_init
- DPI_init
- SIO_init
- GIO_init
- MSGQ_init
- SWI_init
- HOOK_init
- TSK_init
- ISRC_init
- GBL_postamble
-
-;; MODULE STARTUP
- .sect ".sysinit"
- .global BIOS_start, _BIOS_start
-BIOS_start:
-_BIOS_start:
- GBL_preamble
- GBL_startup
- SEM_startup
- MEM_startup
- OBJ_startup
- BUF_startup
- POOL_startup
- CLK_startup
- PRD_startup
- RTDX_startup
- IDL_startup
- LCK_startup
- LOG_startup
- MBX_startup
- PIP_startup
- QUE_startup
- STS_startup
- SYS_startup
- HWI_startup
- HST_startup
- DEV_startup
- UDEV_startup
- DIO_startup
- DGN_startup
- DHL_startup
- DPI_startup
- SIO_startup
- GIO_startup
- MSGQ_startup
- SWI_startup
- HOOK_startup
- TSK_startup
- ISRC_startup
- GBL_postamble
-
-;; EPILOGUE
- GBL_end
- MEM_end
- OBJ_end
- BUF_end
- POOL_end
- CLK_end
- PRD_end
- RTDX_end
- HST_end
- HWI_end
- SWI_end
- TSK_end
- IDL_end
- ISRC_end
- LOG_end
- PIP_end
- SEM_end
- MBX_end
- QUE_end
- LCK_end
- STS_end
- SYS_end
- SIO_end
- GIO_end
- DEV_end
- UDEV_end
- DIO_end
- DGN_end
- DHL_end
- DPI_end
- MSGQ_end
- HOOK_end
-
- .copy confend.s62
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a04edc157506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a04edc157506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/a04edc157506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/c06d5e0d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/c06d5e0d7606001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9d/c06d5e0d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/00d8fc2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/00d8fc2ddf0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/00d8fc2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/60127c4c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/60127c4c7506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/60127c4c7506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/b0d80fafe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/b0d80fafe50100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/b0d80fafe50100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/d0f6b0cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/d0f6b0cc7506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9e/d0f6b0cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/405ecfc9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/405ecfc9e10100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/405ecfc9e10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d02b0b99d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d02b0b99d80100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d02b0b99d80100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d0deaa277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d0deaa277506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/d0deaa277506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/e026b1173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/e026b1173f070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/9f/e026b1173f070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/20cd5b067506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/20cd5b067506001814daa3a49c232c18
deleted file mode 100644
index 8cd5dce..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/20cd5b067506001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/803d2c7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/803d2c7add0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a/803d2c7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/c036a62ce10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/c036a62ce10100181ce89bcacea45786
deleted file mode 100644
index eb91014..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/c036a62ce10100181ce89bcacea45786
+++ /dev/null
@@ -1,130 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
-+
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-//
-// for (i = N-1; i > 0; i--) {
-// x[i] = x[i-1];
-// }
-// x[0] = (float) sample_in / 32767.f;
-//
-// sample_out = non_circ_fir();
-
-// mono_write_16Bit(sample_out);
- mono_write_16Bit(sample_in);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0464a11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0464a11e10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a0/f0464a11e10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a1/c0f7e930dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a1/c0f7e930dd0100181ce89bcacea45786
deleted file mode 100644
index 61ae790..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a1/c0f7e930dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,155 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
- double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/1020aa98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/1020aa98d80100181ce89bcacea45786
deleted file mode 100644
index bd343a8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/1020aa98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,134 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- // temporary variable used to output values from function
- float wave_out, wave;
-
- wave = sinegen();
- wave_out = wave < 0 ? wave : -wave;
-
- mono_write_16Bit((short)(wave_out*32767));
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/8079db3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/8079db3a45070018153483e962c7925e
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/8079db3a45070018153483e962c7925e
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/e02950c77506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/e02950c77506001814daa3a49c232c18
deleted file mode 100644
index 9992d4a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a2/e02950c77506001814daa3a49c232c18
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- ptr--;
- if (ptr == 0)
- ptr = N-1;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/10fc734c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/10fc734c7506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/10fc734c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/500cc0e4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/500cc0e4e50100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/500cc0e4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/507c0610e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/507c0610e10100181ce89bcacea45786
deleted file mode 100644
index 3d22a4f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/507c0610e10100181ce89bcacea45786
+++ /dev/null
@@ -1,163 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/e08e0199d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/e08e0199d80100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a3/e08e0199d80100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/200e7750dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/200e7750dd0100181ce89bcacea45786
deleted file mode 100644
index b740597..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/200e7750dd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-double fir[] = {-1.8442833426489450e-03, -4.1190441269078303e-03, -2.0535873301705059e-03, -1.3703337256766852e-03, 1.5790804472022347e-03, 3.2681033644075077e-03, 3.8489975928325247e-03, 2.5928873392556755e-03, 7.3935746561684527e-04, -6.2977102617087764e-04, -7.4022462424793865e-04, 1.0838837495431400e-05, 6.2201321644194470e-04, 2.6185292432253412e-04, -9.8730303168041776e-04, -2.2339066001458349e-03, -2.5294527601668663e-03, -1.6842480785212259e-03, -4.2016236623464517e-04, 2.5804777572294233e-04, -5.8087123501295821e-05, -8.2110499385966440e-04, -1.0138712539605769e-03, -7.2462256228287853e-05, 1.5627338477316834e-03, 2.7731479415439254e-03, 2.7080617756874989e-03, 1.5299945897829833e-03, 2.9075333523994728e-04, 1.5404209240295982e-05, 7.8386710505693315e-04, 1.6284321950868475e-03, 1.3797792156491663e-03, -2.5618521768113443e-04, -2.3500948837747435e-03, -3.4788598845584733e-03, -2.9380959028223771e-03, -1.3703061862128398e-03, -2.2792940567773815e-04, -4.9434851794134783e-04, -1.7755467135066286e-03, -2.5945983820879503e-03, -1.6902711449647998e-03, 7.9565808915559846e-04, 3.3223856449474342e-03, 4.1997688462157992e-03, 3.0395347122322016e-03, 1.1215680893589990e-03, 2.9752002202157490e-04, 1.3341691376504315e-03, 3.1602890161225561e-03, 3.7417961602412893e-03, 1.8849793135973852e-03, -1.6009389970032073e-03, -4.4527074584582117e-03, -4.8293802357791162e-03, -2.9132207353127319e-03, -7.8850406846637741e-04, -6.2422045469190705e-04, -2.7015401777454782e-03, -5.0424933113328938e-03, -5.0614770814577954e-03, -1.8844015658019846e-03, 2.7175907964180819e-03, 5.6873054220569754e-03, 5.2510734703655098e-03, 2.4858008311493679e-03, 4.2982376594226818e-04, 1.3983170024624116e-03, 4.8185763803916034e-03, 7.5484357920044586e-03, 6.5370280267915745e-03, 1.5974940088091486e-03, -4.1920011112087695e-03, -6.9553964005030101e-03, -5.3222239631027140e-03, -1.6833671816308239e-03, -1.6143678346355493e-04, -2.9210596867410843e-03, -8.0344442826324330e-03, -1.0900480481099871e-02, -8.1827848211804884e-03, -9.0883142585662831e-04, 6.0966318821772843e-03, 8.1701258370888031e-03, 4.8496443047958190e-03, 4.1097124289880154e-04, 1.9261748457898115e-04, 5.7400707533348388e-03, 1.3031422928204483e-02, 1.5600386573617498e-02, 1.0120491742732048e-02, -3.6398549709864289e-04, -8.6154694364350588e-03, -9.2393938919066339e-03, -3.4913914121199800e-03, 1.5371957503610802e-03, -9.5799325715440809e-04, -1.1126447229936170e-02, -2.1547712424197108e-02, -2.3081317200630867e-02, -1.2831352513672649e-02, 2.6694425876734678e-03, 1.2374349063392154e-02, 1.0080975202499228e-02, 3.2000937820879843e-04, -4.8584066984454317e-03, 3.7319205876993832e-03, 2.3366682886858493e-02, 3.9990474678018646e-02, 3.9088852968886305e-02, 1.8511365301032767e-02, -7.9253063604813167e-03, -2.0525827169962409e-02, -1.0613484503384342e-02, 9.6001638620202695e-03, 1.4005289209909406e-02, -1.6623772517222801e-02, -7.5176947269083069e-02, -1.2649037212918582e-01, -1.2785005009999825e-01, -5.9386966029887411e-02, 5.7144488726935457e-02, 1.6633881280155735e-01, 2.1079847965764975e-01, 1.6633881280155735e-01, 5.7144488726935457e-02, -5.9386966029887411e-02, -1.2785005009999825e-01, -1.2649037212918582e-01, -7.5176947269083069e-02, -1.6623772517222801e-02, 1.4005289209909406e-02, 9.6001638620202695e-03, -1.0613484503384342e-02, -2.0525827169962409e-02, -7.9253063604813167e-03, 1.8511365301032767e-02, 3.9088852968886305e-02, 3.9990474678018646e-02, 2.3366682886858493e-02, 3.7319205876993832e-03, -4.8584066984454317e-03, 3.2000937820879843e-04, 1.0080975202499228e-02, 1.2374349063392154e-02, 2.6694425876734678e-03, -1.2831352513672649e-02, -2.3081317200630867e-02, -2.1547712424197108e-02, -1.1126447229936170e-02, -9.5799325715440809e-04, 1.5371957503610802e-03, -3.4913914121199800e-03, -9.2393938919066339e-03, -8.6154694364350588e-03, -3.6398549709864289e-04, 1.0120491742732048e-02, 1.5600386573617498e-02, 1.3031422928204483e-02, 5.7400707533348388e-03, 1.9261748457898115e-04, 4.1097124289880154e-04, 4.8496443047958190e-03, 8.1701258370888031e-03, 6.0966318821772843e-03, -9.0883142585662831e-04, -8.1827848211804884e-03, -1.0900480481099871e-02, -8.0344442826324330e-03, -2.9210596867410843e-03, -1.6143678346355493e-04, -1.6833671816308239e-03, -5.3222239631027140e-03, -6.9553964005030101e-03, -4.1920011112087695e-03, 1.5974940088091486e-03, 6.5370280267915745e-03, 7.5484357920044586e-03, 4.8185763803916034e-03, 1.3983170024624116e-03, 4.2982376594226818e-04, 2.4858008311493679e-03, 5.2510734703655098e-03, 5.6873054220569754e-03, 2.7175907964180819e-03, -1.8844015658019846e-03, -5.0614770814577954e-03, -5.0424933113328938e-03, -2.7015401777454782e-03, -6.2422045469190705e-04, -7.8850406846637741e-04, -2.9132207353127319e-03, -4.8293802357791162e-03, -4.4527074584582117e-03, -1.6009389970032073e-03, 1.8849793135973852e-03, 3.7417961602412893e-03, 3.1602890161225561e-03, 1.3341691376504315e-03, 2.9752002202157490e-04, 1.1215680893589990e-03, 3.0395347122322016e-03, 4.1997688462157992e-03, 3.3223856449474342e-03, 7.9565808915559846e-04, -1.6902711449647998e-03, -2.5945983820879503e-03, -1.7755467135066286e-03, -4.9434851794134783e-04, -2.2792940567773815e-04, -1.3703061862128398e-03, -2.9380959028223771e-03, -3.4788598845584733e-03, -2.3500948837747435e-03, -2.5618521768113443e-04, 1.3797792156491663e-03, 1.6284321950868475e-03, 7.8386710505693315e-04, 1.5404209240295982e-05, 2.9075333523994728e-04, 1.5299945897829833e-03, 2.7080617756874989e-03, 2.7731479415439254e-03, 1.5627338477316834e-03, -7.2462256228287853e-05, -1.0138712539605769e-03, -8.2110499385966440e-04, -5.8087123501295821e-05, 2.5804777572294233e-04, -4.2016236623464517e-04, -1.6842480785212259e-03, -2.5294527601668663e-03, -2.2339066001458349e-03, -9.8730303168041776e-04, 2.6185292432253412e-04, 6.2201321644194470e-04, 1.0838837495431400e-05, -7.4022462424793865e-04, -6.2977102617087764e-04, 7.3935746561684527e-04, 2.5928873392556755e-03, 3.8489975928325247e-03, 3.2681033644075077e-03, 1.5790804472022347e-03, -1.3703337256766852e-03, -2.0535873301705059e-03, -4.1190441269078303e-03, -1.8442833426489450e-03 }
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/e0f259203f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/e0f259203f070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a4/e0f259203f070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/30eb2d7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/30eb2d7add0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/30eb2d7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/506df655e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/506df655e20100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/506df655e20100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b067d940dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b067d940dd0100181ce89bcacea45786
deleted file mode 100644
index cc186b7..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a5/b067d940dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {-
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a7/10b34511e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a7/10b34511e10100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a7/10b34511e10100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/60678ed57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/60678ed57506001814daa3a49c232c18
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/60678ed57506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/907b058f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/907b058f41070018153483e962c7925e
deleted file mode 100644
index 0d4e4aa..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a8/907b058f41070018153483e962c7925e
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Feb 01 11:00:20 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e0a012167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e0a012167506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/a9/e0a012167506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ac/e0be12afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ac/e0be12afe50100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ac/e0be12afe50100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/702d85d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/702d85d3e10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/702d85d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/f0fc7f11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/f0fc7f11e10100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ad/f0fc7f11e10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30716684d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30716684d80100181ce89bcacea45786
deleted file mode 100644
index d3c4f56..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30716684d80100181ce89bcacea45786
+++ /dev/null
@@ -1,131 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- // temporary variable used to output values from function
- float wave_out, wave;
-
- wave = sinegen();
- wave_out = wave < 0 ? wave : -wave;
-
- mono_write_16Bit((short)(wave_out*32767));
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30e6f06bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30e6f06bdd0100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/30e6f06bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a00412167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a00412167506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ae/a00412167506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/af/a0038fd57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/af/a0038fd57506001814daa3a49c232c18
deleted file mode 100644
index d195a3d..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/af/a0038fd57506001814daa3a49c232c18
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Wed Jan 31 10:59:25 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b/908a0fafe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b/908a0fafe50100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b/908a0fafe50100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/00df4c11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/00df4c11e10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/00df4c11e10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/4039aed3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/4039aed3e10100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/4039aed3e10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/9063e855e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/9063e855e20100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/9063e855e20100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f0e6afd3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f0e6afd3e10100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b0/f0e6afd3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b1/301be924610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b1/301be924610b001815de8ca47440e6f8
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b1/301be924610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/3079af173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/3079af173f070018153483e962c7925e
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/3079af173f070018153483e962c7925e
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7083a7277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7083a7277506001814daa3a49c232c18
deleted file mode 100644
index 9d61296..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/7083a7277506001814daa3a49c232c18
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Wed Jan 31 10:54:19 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c06c142ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c06c142ee10100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c06c142ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0cfb0cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0cfb0cc7506001814daa3a49c232c18
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/c0cfb0cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/f0838b79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/f0838b79cd0100181ce89bcacea45786
deleted file mode 100644
index 1cd3e3e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b2/f0838b79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,1091 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "Thu Jan 18 13:48:06 2018", VERS$DATE
-
-;; PROLOGUE
- .include dsp_bios_cfg.h62
- .copy confbeg.s62
-
-;; TYPE HEADERS
- .include gbl.h62
- .include mem.h62
- .include obj.h62
- .include buf.h62
- .include pool.h62
- .include clk.h62
- .include prd.h62
- .include rtdx.h62
- .include hst.h62
- .include hwi.h62
- .include swi.h62
- .include tsk.h62
- .include idl.h62
- .include isrc.h62
- .include log.h62
- .include pip.h62
- .include sem.h62
- .include mbx.h62
- .include que.h62
- .include lck.h62
- .include sts.h62
- .include sys.h62
- .include sio.h62
- .include gio.h62
- .include dev.h62
- .include udev.h62
- .include dio.h62
- .include dgn.h62
- .include dhl.h62
- .include dpi.h62
- .include msgq.h62
- .include hook.h62
-
-;; TYPE ATTRIBUTES
-MEM$NUMOF .set 2
-MEM$SETOF .set 00H
-OBJ$NUMOF .set 0
-OBJ$SETOF .set 00H
-BUF$NUMOF .set 0
-BUF$SETOF .set 00H
-CLK$NUMOF .set 1
-CLK$SETOF .set 00H
-PRD$NUMOF .set 0
-PRD$SETOF .set 00H
-RTDX$NUMOF .set 0
-RTDX$SETOF .set 00H
-HST$NUMOF .set 2
-HST$SETOF .set 03H
-HWI$NUMOF .set 16
-HWI$SETOF .set 0ffffH
-SWI$NUMOF .set 1
-SWI$SETOF .set 00H
-TSK$NUMOF .set 1
-TSK$SETOF .set 00H
-IDL$NUMOF .set 3
-IDL$SETOF .set 00H
-ISRC$NUMOF .set 0
-ISRC$SETOF .set 00H
-LOG$NUMOF .set 1
-LOG$SETOF .set 00H
-PIP$NUMOF .set 0
-PIP$SETOF .set 00H
-SEM$NUMOF .set 0
-SEM$SETOF .set 00H
-MBX$NUMOF .set 0
-MBX$SETOF .set 00H
-QUE$NUMOF .set 0
-QUE$SETOF .set 00H
-LCK$NUMOF .set 0
-LCK$SETOF .set 00H
-STS$NUMOF .set 1
-STS$SETOF .set 00H
-SIO$NUMOF .set 0
-SIO$SETOF .set 00H
-DEV$NUMOF .set 0
-DEV$SETOF .set 00H
-UDEV$NUMOF .set 0
-UDEV$SETOF .set 00H
-DIO$NUMOF .set 0
-DIO$SETOF .set 00H
-DGN$NUMOF .set 0
-DGN$SETOF .set 00H
-DHL$NUMOF .set 0
-DHL$SETOF .set 00H
-DPI$NUMOF .set 0
-DPI$SETOF .set 00H
-HOOK$NUMOF .set 0
-HOOK$SETOF .set 00H
-
-;; module GBL (ROM, PROCID, CLKIN, FREQ, DSPTYPE, DSPSUBTYPE, CLKTYPE, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC)
- .global GBL$ ; == 1
- .global GBL_ROM ; dsp_bios_cfg.h62
- .global GBL_PROCID ; dsp_bios_cfg.h62
- .global GBL_CLKIN ; dsp_bios_cfg.h62
- .global GBL_FREQ ; dsp_bios_cfg.h62
- .global GBL_DSPTYPE ; dsp_bios_cfg.h62
- .global GBL_DSPSUBTYPE ; dsp_bios_cfg.h62
- .global GBL_CLKTYPE ; dsp_bios_cfg.h62
- .global GBL_BIGENDIAN ; dsp_bios_cfg.h62
- .global GBL_USERINIT ; dsp_bios_cfg.h62
- .global GBL_USERINITFXN ; dsp_bios_cfg.cmd
- .global GBL_ENABLEINST ; dsp_bios_cfg.h62
- .global GBL_CACHE ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGURE ; dsp_bios_cfg.h62
- .global GBL_L2MODE ; dsp_bios_cfg.h62
- .global GBL_L2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK ; dsp_bios_cfg.h62
- .global GBL_SUPPORTCSL ; dsp_bios_cfg.h62
- .global GBL_TRCMASKVALUE ; dsp_bios_cfg.h62
- .global GBL_CALLCSLCFGINIT ; dsp_bios_cfg.h62
- .global GBL_C641XL2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK1 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK2 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK3 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK4 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK5 ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGALLOC ; dsp_bios_cfg.h62
- .global GBL_L2ALLOC ; dsp_bios_cfg.h62
-
-;; module MEM (gNumHeap, SEGZERO, MALLOCSEG, USEMPC)
- .global MEM$ ; == 1
- .global MEM_gNumHeap ; dsp_bios_cfg.h62
- .global MEM_SEGZERO ; dsp_bios_cfg.cmd
- .global MEM_MALLOCSEG ; dsp_bios_cfg.cmd
- .global MEM_USEMPC ; dsp_bios_cfg.h62
-
-;; module OBJ ()
- .global OBJ$ ; == 0
-
-;; module BUF (ENABLED)
- .global BUF$ ; == 0
- .global BUF_ENABLED ; dsp_bios_cfg.h62
-
-;; module POOL (USEPOOL)
- .global POOL$ ; == 0
- .global POOL_USEPOOL ; dsp_bios_cfg.h62
-
-;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, MICROSECS, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN, CALDIV, CALMULT, HTIMEDIV, HTIMEMULT, LTIMEDIV, LTIMEMULT, HTIMEPERLTIME)
- .global CLK$ ; == 1
- .global CLK_INTBIT ; dsp_bios_cfg.h62
- .global CLK_REGS ; dsp_bios_cfg.h62
- .global CLK_TIMERNUM ; dsp_bios_cfg.h62
- .global CLK_USETIMER ; dsp_bios_cfg.h62
- .global CLK_MICROSECS ; dsp_bios_cfg.h62
- .global CLK_TCR ; dsp_bios_cfg.h62
- .global CLK_TDDR ; dsp_bios_cfg.h62
- .global CLK_TDDRHIGH ; dsp_bios_cfg.h62
- .global CLK_PRD ; dsp_bios_cfg.h62
- .global CLK_PRDHIGH ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMS ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMSHIGH ; dsp_bios_cfg.h62
- .global CLK_TIMEFXN ; dsp_bios_cfg.cmd
- .global CLK_HOOKFXN ; dsp_bios_cfg.cmd
- .global CLK_CALDIV ; dsp_bios_cfg.h62
- .global CLK_CALMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_HTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_LTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_LTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEPERLTIME ; dsp_bios_cfg.h62
-
-;; module PRD (SCALAR, THOOKFXN)
- .global PRD$ ; == 1
- .global PRD_SCALAR ; dsp_bios_cfg.h62
- .global PRD_THOOKFXN ; dsp_bios_cfg.cmd
-
-;; module RTDX (USERTDX, USERTEXECUTION, RTDXTYPE, DATAMEMSEG, BUFMEMSIZE)
- .global RTDX$ ; == 1
- .global RTDX_USERTDX ; dsp_bios_cfg.h62
- .global RTDX_USERTEXECUTION ; dsp_bios_cfg.h62
- .global RTDX_RTDXTYPE ; dsp_bios_cfg.h62
- .global RTDX_DATAMEMSEG ; dsp_bios_cfg.cmd
- .global RTDX_BUFMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE)
- .global HST$ ; == 1
- .global HST_RTDX ; dsp_bios_cfg.h62
- .global HST_DSM ; dsp_bios_cfg.h62
- .global HST_NONE ; dsp_bios_cfg.h62
- .global HST_MAXFRAMESET ; dsp_bios_cfg.h62
- .global HST_MAXFRAMEALLOWED ; dsp_bios_cfg.h62
- .global HST_DSMBUFSEG ; dsp_bios_cfg.cmd
- .global HST_DSMMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH, CFGDISPATCHED)
- .global HWI$ ; == 1
- .global HWI_ZEROTAB ; dsp_bios_cfg.h62
- .global HWI_GENERATE_RESET_VEC ; dsp_bios_cfg.h62
- .global HWI_POLARITYMASK ; dsp_bios_cfg.h62
- .global HWI_INTRMULTLOW ; dsp_bios_cfg.h62
- .global HWI_INTRMULTHIGH ; dsp_bios_cfg.h62
- .global HWI_CFGDISPATCHED ; dsp_bios_cfg.h62
-
-;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN)
- .global SWI$ ; == 1
- .global SWI_EHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_IHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_EXECFXN ; dsp_bios_cfg.cmd
- .global SWI_RUNFXN ; dsp_bios_cfg.cmd
-
-;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS)
- .global TSK$ ; == 1
- .global TSK_STACKSIZE ; dsp_bios_cfg.h62
- .global TSK_STACKSEG ; dsp_bios_cfg.cmd
- .global TSK_PRIORITY ; dsp_bios_cfg.h62
- .global TSK_VCREATEFXN ; dsp_bios_cfg.cmd
- .global TSK_VDELETEFXN ; dsp_bios_cfg.cmd
- .global TSK_VEXITFXN ; dsp_bios_cfg.cmd
- .global TSK_SWITCHFXN ; dsp_bios_cfg.h62
- .global TSK_READYFXN ; dsp_bios_cfg.h62
- .global TSK_NUM_HOOKS ; dsp_bios_cfg.h62
-
-;; module IDL (USECLKIDLTIME, CALIBRFXN, CALIBRERROR)
- .global IDL$ ; == 1
- .global IDL_USECLKIDLTIME ; dsp_bios_cfg.h62
- .global IDL_CALIBRFXN ; dsp_bios_cfg.cmd
- .global IDL_CALIBRERROR ; dsp_bios_cfg.h62
-
-;; module ISRC ()
- .global ISRC$ ; == 1
-
-;; module LOG (ENABLED)
- .global LOG$ ; == 1
- .global LOG_ENABLED ; dsp_bios_cfg.h62
-
-;; module PIP (gNumEmbed, gNextId, OBJSIZE)
- .global PIP$ ; == 0
- .global PIP_gNumEmbed ; dsp_bios_cfg.h62
- .global PIP_gNextId ; dsp_bios_cfg.h62
- .global PIP_OBJSIZE ; dsp_bios_cfg.h62
-
-;; module SEM ()
- .global SEM$ ; == 0
-
-;; module MBX ()
- .global MBX$ ; == 0
-
-;; module QUE ()
- .global QUE$ ; == 1
-
-;; module LCK ()
- .global LCK$ ; == 1
-
-;; module STS ()
- .global STS$ ; == 1
-
-;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
- .global SYS$ ; == 1
- .global SYS_ABORTFXN ; dsp_bios_cfg.cmd
- .global SYS_ERRORFXN ; dsp_bios_cfg.cmd
- .global SYS_EXITFXN ; dsp_bios_cfg.cmd
- .global SYS_PUTCFXN ; dsp_bios_cfg.cmd
-
-;; module SIO ()
- .global SIO$ ; == 0
-
-;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN)
- .global GIO$ ; == 0
- .global GIO_CREATEFXN ; dsp_bios_cfg.cmd
- .global GIO_DELETEFXN ; dsp_bios_cfg.cmd
- .global GIO_PENDFXN ; dsp_bios_cfg.cmd
- .global GIO_POSTFXN ; dsp_bios_cfg.cmd
-
-;; module DEV ()
- .global DEV$ ; == 0
-
-;; module UDEV ()
- .global UDEV$ ; == 0
-
-;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE)
- .global DIO$ ; == 0
- .global DIO_STATIC ; dsp_bios_cfg.h62
- .global DIO_NUMTSKBASE ; dsp_bios_cfg.h62
- .global DIO_NUMSWIBASE ; dsp_bios_cfg.h62
-
-;; module DGN ()
- .global DGN$ ; == 0
-
-;; module DHL (gChannelsAvailable)
- .global DHL$ ; == 0
- .global DHL_gChannelsAvailable ; dsp_bios_cfg.h62
-
-;; module DPI ()
- .global DPI$ ; == 0
-
-;; module MSGQ (USEMSGQ)
- .global MSGQ$ ; == 0
- .global MSGQ_USEMSGQ ; dsp_bios_cfg.h62
-
-;; module HOOK (KNLID)
- .global HOOK$ ; == 0
- .global HOOK_KNLID ; dsp_bios_cfg.h62
-
-;; MODULE CONFIGURATION
-
-;; ======== GBL_config ========
- .asg 00H, _ROM
- .asg 00H, _PROCID
- .asg 04e20H, _CLKIN
- .asg 036ee8H, _FREQ
- .asg 03eH, _DSPTYPE
- .asg 01a39H, _DSPSUBTYPE
- .asg 01770H, _CLKTYPE
- .asg 00H, _BIGENDIAN
- .asg 01H, _USERINIT
- .asg _GBL_setPLLto225MHz, _USERINITFXN
- .asg 01H, _ENABLEINST
- .asg 00H, _CACHE
- .asg 01H, _L2CONFIGURE
- .asg 00H, _L2MODE
- .asg 00H, _L2PRIORITY
- .asg 01H, _L2MARMASK
- .asg 00H, _SUPPORTCSL
- .asg 0dbefH, _TRCMASKVALUE
- .asg 01H, _CALLCSLCFGINIT
- .asg 00H, _C641XL2PRIORITY
- .asg 00H, _L2MARMASK1
- .asg 00H, _L2MARMASK2
- .asg 00H, _L2MARMASK3
- .asg 00H, _L2MARMASK4
- .asg 00H, _L2MARMASK5
- .asg 00H, _L2CONFIGALLOC
- .asg 02226H, _L2ALLOC
- GBL_config _ROM, _PROCID, _CLKIN, _FREQ, _DSPTYPE, _DSPSUBTYPE, _CLKTYPE, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC
-
-;; ======== MEM_config ========
- .asg 00H, _gNumHeap
- .asg MEM_NULL, _SEGZERO
- .asg MEM_NULL, _MALLOCSEG
- .asg 00H, _USEMPC
- MEM_config _gNumHeap, _SEGZERO, _MALLOCSEG, _USEMPC
-
-;; ======== OBJ_config ========
- OBJ_config
-
-;; ======== BUF_config ========
- .asg 01H, _ENABLED
- BUF_config _ENABLED
-
-;; ======== POOL_config ========
- .asg 00H, _USEPOOL
- POOL_config _USEPOOL
-
-;; ======== CLK_config ========
- .asg 04000H, _INTBIT
- .asg 01940000H, _REGS
- .asg 00H, _TIMERNUM
- .asg 01H, _USETIMER
- .asg 03e8H, _MICROSECS
- .asg 020H, _TCR
- .asg 00H, _TDDR
- .asg 00H, _TDDRHIGH
- .asg 0dbbaH, _PRD
- .asg 00H, _PRDHIGH
- .asg 0dbbaH, _COUNTSPMS
- .asg 00H, _COUNTSPMSHIGH
- .asg CLK_F_getshtime, _TIMEFXN
- .asg HWI_F_dispatch, _HOOKFXN
- .asg 01H, _CALDIV
- .asg 04H, _CALMULT
- .asg 01H, _HTIMEDIV
- .asg 04H, _HTIMEMULT
- .asg 01H, _LTIMEDIV
- .asg 036ee8H, _LTIMEMULT
- .asg 0dbbaH, _HTIMEPERLTIME
- CLK_config _INTBIT, _REGS, _TIMERNUM, _USETIMER, _MICROSECS, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN, _CALDIV, _CALMULT, _HTIMEDIV, _HTIMEMULT, _LTIMEDIV, _LTIMEMULT, _HTIMEPERLTIME
-
-;; ======== PRD_config ========
- .asg 04000H, _SCALAR
- .asg _KNL_tick, _THOOKFXN
- PRD_config _SCALAR, _THOOKFXN
-
-;; ======== RTDX_config ========
- .asg 01H, _USERTDX
- .asg 00H, _USERTEXECUTION
- .asg "JTAG", _RTDXTYPE
- .asg IRAM, _DATAMEMSEG
- .asg 0408H, _BUFMEMSIZE
- RTDX_config _USERTDX, _USERTEXECUTION, _RTDXTYPE, _DATAMEMSEG, _BUFMEMSIZE
-
-;; ======== HST_config ========
- .asg 01H, _RTDX
- .asg 00H, _DSM
- .asg 00H, _NONE
- .asg 040H, _MAXFRAMESET
- .asg 0ffH, _MAXFRAMEALLOWED
- .asg IRAM, _DSMBUFSEG
- .asg 0400H, _DSMMEMSIZE
- HST_config _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE
-
-;; ======== HWI_config ========
- .asg 01H, _ZEROTAB
- .asg 00H, _GENERATE_RESET_VEC
- .asg 00H, _POLARITYMASK
- .asg 0310718aeH, _INTRMULTLOW
- .asg 082039a3H, _INTRMULTHIGH
- .asg 04018H, _CFGDISPATCHED
- HWI_config _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH, _CFGDISPATCHED
-
-;; ======== SWI_config ========
- .asg GBL_NULL, _EHOOKFXN
- .asg GBL_NULL, _IHOOKFXN
- .asg SWI_F_exec, _EXECFXN
- .asg SWI_F_run, _RUNFXN
- SWI_config _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN
-
-;; ======== TSK_config ========
- .asg 0400H, _STACKSIZE
- .asg MEM_NULL, _STACKSEG
- .asg 01H, _PRIORITY
- .asg _FXN_F_nop, _VCREATEFXN
- .asg _FXN_F_nop, _VDELETEFXN
- .asg _FXN_F_nop, _VEXITFXN
- .asg 00H, _SWITCHFXN
- .asg 00H, _READYFXN
- .asg 00H, _NUM_HOOKS
- TSK_config _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS
-
-;; ======== IDL_config ========
- .asg 01H, _USECLKIDLTIME
- .asg IDL_F_stub, _CALIBRFXN
- .asg 06H, _CALIBRERROR
- IDL_config _USECLKIDLTIME, _CALIBRFXN, _CALIBRERROR
-
-;; ======== ISRC_config ========
- ISRC_config
-
-;; ======== LOG_config ========
- .asg 01H, _ENABLED
- LOG_config _ENABLED
-
-;; ======== PIP_config ========
- .asg 02H, _gNumEmbed
- .asg 00H, _gNextId
- .asg 064H, _OBJSIZE
- PIP_config _gNumEmbed, _gNextId, _OBJSIZE
-
-;; ======== SEM_config ========
- SEM_config
-
-;; ======== MBX_config ========
- MBX_config
-
-;; ======== QUE_config ========
- QUE_config
-
-;; ======== LCK_config ========
- LCK_config
-
-;; ======== STS_config ========
- STS_config
-
-;; ======== SYS_config ========
- .asg _UTL_doAbort, _ABORTFXN
- .asg _UTL_doError, _ERRORFXN
- .asg _UTL_halt, _EXITFXN
- .asg _UTL_doPutc, _PUTCFXN
- SYS_config _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN
-
-;; ======== SIO_config ========
- SIO_config
-
-;; ======== GIO_config ========
- .asg _FXN_F_nop, _CREATEFXN
- .asg _FXN_F_nop, _DELETEFXN
- .asg _FXN_F_nop, _PENDFXN
- .asg _FXN_F_nop, _POSTFXN
- GIO_config _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN
-
-;; ======== DEV_config ========
- DEV_config
-
-;; ======== UDEV_config ========
- UDEV_config
-
-;; ======== DIO_config ========
- .asg 00H, _STATIC
- .asg 00H, _NUMTSKBASE
- .asg 00H, _NUMSWIBASE
- DIO_config _STATIC, _NUMTSKBASE, _NUMSWIBASE
-
-;; ======== DGN_config ========
- DGN_config
-
-;; ======== DHL_config ========
- .asg 00H, _gChannelsAvailable
- DHL_config _gChannelsAvailable
-
-;; ======== DPI_config ========
- DPI_config
-
-;; ======== MSGQ_config ========
- .asg 00H, _USEMSGQ
- MSGQ_config _USEMSGQ
-
-;; ======== HOOK_config ========
- .asg 00H, _KNLID
- HOOK_config _KNLID
-
-;; ======== MEM_Obj SDRAM ========
-;; This object defines 8MB for the DSP's off-chip memory
-;;
-;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global SDRAM
- .asg 0800000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== MEM_Obj IRAM ========
-;; Internal L2 memory
-;;
-;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global IRAM
- .asg 040000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== CLK_Obj PRD_clock ========
-;; This clock function calls PRD_tick from within the on-chip timer ISR
-;;
-;; CLK_Obj PRD_clock (function)
- .global PRD_clock
- .asg PRD_F_tick, _function
- CLK_Obj 1, PRD_clock, 0, _function
-
-;; ======== HST_Obj RTA_fromHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_fromHost
- .asg "input", _mode
- .asg "<NULL>", _buf
- .asg 04H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HST_Obj RTA_toHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_toHost
- .asg "output", _mode
- .asg "<NULL>", _buf
- .asg 040H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HWI_Obj HWI_RESET ========
-;; defines function for the RESET ISR
-;;
-;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESET
- .asg _c_int00, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_NMI ========
-;; defines function for the NMI ISR
-;;
-;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_NMI
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED0 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED0
- .asg RESERVED, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 04H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED1 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED1
- .asg _RTDX_Poll, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT4 ========
-;; defines the INT4 Interrupt
-;;
-;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT4
- .asg _ISR_AIC, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 010H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT5 ========
-;; defines the INT5 Interrupt
-;;
-;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT5
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 020H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT6 ========
-;; defines the INT6 Interrupt
-;;
-;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT6
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 040H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT7 ========
-;; defines the INT7 Interrupt
-;;
-;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT7
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 080H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT8 ========
-;; defines the INT8 Interrupt
-;;
-;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT8
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0100H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT9 ========
-;; defines the INT9 Interrupt
-;;
-;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT9
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0200H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT10 ========
-;; defines the INT10 Interrupt
-;;
-;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT10
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0400H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT11 ========
-;; defines the INT11 Interrupt
-;;
-;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT11
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0800H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT12 ========
-;; defines the INT12 Interrupt
-;;
-;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT12
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT13 ========
-;; defines the INT13 Interrupt
-;;
-;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT13
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT14 ========
-;; defines the INT14 Interrupt
-;;
-;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT14
- .asg CLK_F_isr, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "CLK", _client
- .asg 01H, _iUseDispatcher
- .asg CLK_A_TABBEG, _iArg
- .asg 04000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT15 ========
-;; defines the INT15 Interrupt
-;;
-;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT15
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== SWI_Obj KNL_swi ========
-;; This Software Interrupt calls the TSK scheduler
-;;
-;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global KNL_swi
- .asg _KNL_run, _function
- .asg 00H, _pri
- .asg 00H, _mailbox
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg 01H, _dorta
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== TSK_Obj TSK_idle ========
-;; This is the idle task; it only runs when no other task is ready
-;;
-;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global TSK_idle
- .asg IDL_F_loop, _iFXN
- .asg 00H, _iARG0
- .asg 00H, _iARG1
- .asg 00H, _iARG2
- .asg 00H, _iARG3
- .asg 00H, _iARG4
- .asg 00H, _iARG5
- .asg 00H, _iARG6
- .asg 00H, _iARG7
- .asg 01H, _iAUTOSTK
- .asg null, _iMANSTK
- .asg 0400H, _iSTKSZ
- .asg IRAM, _iSTKSEG
- .asg 00H, _iPRI
- .asg 00H, _iENV
- .asg 01H, _iEXITFLAG
- .asg 00H, _iUSETSKNAME
- .asg 00H, _iSTATREG
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== IDL_Obj IDL_cpuLoad ========
-;; This object is required by the system to acquire CPU load data
-;;
-;; IDL_Obj IDL_cpuLoad (function, calibration)
- .global IDL_cpuLoad
- .asg IDL_F_busy, _function
- .asg 01H, _calibration
- IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration
-
-;; ======== IDL_Obj LNK_dataPump ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj LNK_dataPump (function, calibration)
- .global LNK_dataPump
- .asg LNK_F_dataPump, _function
- .asg 01H, _calibration
- IDL_Obj 1, LNK_dataPump, 0, _function, _calibration
-
-;; ======== IDL_Obj RTA_dispatcher ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj RTA_dispatcher (function, calibration)
- .global RTA_dispatcher
- .asg RTA_F_dispatch, _function
- .asg 01H, _calibration
- IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration
-
-;; ======== LOG_Obj LOG_system ========
-;; This object is required by the system to accumulate execution trace information
-;;
-;; LOG_Obj LOG_system (bufseg, buflen, logtype, iType, iFormat)
- .global LOG_system
- .asg IRAM, _bufseg
- .asg 040H, _buflen
- .asg "circular", _logtype
- .asg "system", _iType
- .asg "0x%x, 0x%x, 0x%x", _iFormat
- LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype, _iType, _iFormat
-
-;; ======== STS_Obj IDL_busyObj ========
-;; This object is required by the system to accumulate CPU load statistics
-;;
-;; STS_Obj IDL_busyObj (prev, filter, maxformat, sumformat, avgformat, op, uType, iA, iB, iC, prevlow)
- .global IDL_busyObj
- .asg 00H, _prev
- .asg 01H, _filter
- .asg "%g", _maxformat
- .asg "%g", _sumformat
- .asg "%.2f", _avgformat
- .asg 00H, _op
- .asg 02H, _uType
- .asg 01H, _iA
- .asg 00H, _iB
- .asg 01H, _iC
- .asg 00H, _prevlow
- STS_Obj 1, IDL_busyObj, 0, _prev, _filter, _maxformat, _sumformat, _avgformat, _op, _uType, _iA, _iB, _iC, _prevlow
-
-;; MODULE INITIALIZATION
- .sect ".sysinit"
- .global BIOS_init, _BIOS_init
-BIOS_init:
-_BIOS_init:
- GBL_preamble
- GBL_init
- SEM_init
- MEM_init
- OBJ_init
- BUF_init
- POOL_init
- CLK_init
- PRD_init
- RTDX_init
- IDL_init
- LCK_init
- LOG_init
- MBX_init
- PIP_init
- QUE_init
- STS_init
- SYS_init
- HWI_init
- HST_init
- DEV_init
- UDEV_init
- DIO_init
- DGN_init
- DHL_init
- DPI_init
- SIO_init
- GIO_init
- MSGQ_init
- SWI_init
- HOOK_init
- TSK_init
- ISRC_init
- GBL_postamble
-
-;; MODULE STARTUP
- .sect ".sysinit"
- .global BIOS_start, _BIOS_start
-BIOS_start:
-_BIOS_start:
- GBL_preamble
- GBL_startup
- SEM_startup
- MEM_startup
- OBJ_startup
- BUF_startup
- POOL_startup
- CLK_startup
- PRD_startup
- RTDX_startup
- IDL_startup
- LCK_startup
- LOG_startup
- MBX_startup
- PIP_startup
- QUE_startup
- STS_startup
- SYS_startup
- HWI_startup
- HST_startup
- DEV_startup
- UDEV_startup
- DIO_startup
- DGN_startup
- DHL_startup
- DPI_startup
- SIO_startup
- GIO_startup
- MSGQ_startup
- SWI_startup
- HOOK_startup
- TSK_startup
- ISRC_startup
- GBL_postamble
-
-;; EPILOGUE
- GBL_end
- MEM_end
- OBJ_end
- BUF_end
- POOL_end
- CLK_end
- PRD_end
- RTDX_end
- HST_end
- HWI_end
- SWI_end
- TSK_end
- IDL_end
- ISRC_end
- LOG_end
- PIP_end
- SEM_end
- MBX_end
- QUE_end
- LCK_end
- STS_end
- SYS_end
- SIO_end
- GIO_end
- DEV_end
- UDEV_end
- DIO_end
- DGN_end
- DHL_end
- DPI_end
- MSGQ_end
- HOOK_end
-
- .copy confend.s62
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/4047b950dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/4047b950dd0100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/4047b950dd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/8066fd24610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/8066fd24610b001815de8ca47440e6f8
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b3/8066fd24610b001815de8ca47440e6f8
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/40ddda3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/40ddda3a45070018153483e962c7925e
deleted file mode 100644
index 69b081e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/40ddda3a45070018153483e962c7925e
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Feb 01 11:42:16 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/60e5afcc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/60e5afcc7506001814daa3a49c232c18
deleted file mode 100644
index 2df9384..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/60e5afcc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Wed Jan 31 10:55:50 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/80fcf86bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/80fcf86bdd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b4/80fcf86bdd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/307a2b7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/307a2b7add0100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/307a2b7add0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/30c3b155e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/30c3b155e20100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/30c3b155e20100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/a0b9bef041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/a0b9bef041070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b5/a0b9bef041070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/003bebe4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/003bebe4e50100181ce89bcacea45786
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/003bebe4e50100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/4074fd2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/4074fd2ddf0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/4074fd2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/50f69169d70100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/50f69169d70100181ce89bcacea45786
deleted file mode 100644
index 7bf4e29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/50f69169d70100181ce89bcacea45786
+++ /dev/null
@@ -1,173 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include ""
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-
-// Table size
-#define SINE_TABLE_SIZE 256
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
-
-/* Sampling frequency in HZ. Must only be set to 8000, 16000, 24000
-32000, 44100 (CD standard), 48000 or 96000 */
-int sampling_freq = 8000;
-
-/* Use this variable in your code to set the frequency of your sine wave
- be carefull that you do not set it above the current nyquist frequency! */
-float sine_freq = 1000.0;
-
-// Declares the global sine table that will be used to generate the sine wave
-float table[SINE_TABLE_SIZE];
-
-// Current index in the table, that can be used to calculate the next index
-int sine_index = 0;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-float sinegen(void);
-void ISR_AIC(void);
-void sine_init(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- // initialize the sine wave
- sine_init();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_XINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_XINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-// populates the table with appropriate sine values
-void sine_init()
-{
- int i;
- for(i = 0; i < SINE_TABLE_SIZE; i++)
- {
- table[i] = sin(2 * PI * i / SINE_TABLE_SIZE);
- }
-}
-
-// returns the sample according to the sampling frequency
-float sinegen()
-{
- unsigned sample_index = sine_index * sine_freq * SINE_TABLE_SIZE / sampling_freq;
- sample_index %= SINE_TABLE_SIZE;
- sine_index++;
- return table[sample_index];
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- // temporary variable used to output values from function
- float wave_out, wave;
-
- wave = sinegen();
- wave_out = wave < 0 ? wave : -wave;
-
- mono_write_16Bit((short)(wave_out*32767));
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/6052dec9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/6052dec9e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b6/6052dec9e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/407c9879cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/407c9879cd0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/407c9879cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b058ba50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b058ba50dd0100181ce89bcacea45786
deleted file mode 100644
index c28aad8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b058ba50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 14:04:03 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/6055ca0a7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/6055ca0a7606001814daa3a49c232c18
deleted file mode 100644
index d3fa33c..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/6055ca0a7606001814daa3a49c232c18
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N;
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/a0f332c97506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/a0f332c97506001814daa3a49c232c18
deleted file mode 100644
index 8447fe5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b8/a0f332c97506001814daa3a49c232c18
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N-1;
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/20e6122ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/20e6122ee10100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/20e6122ee10100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05883d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05883d3e10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05883d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05c0efd7406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05c0efd7406001814daa3a49c232c18
deleted file mode 100644
index 7253907..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/b05c0efd7406001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c09d8879cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c09d8879cd0100181ce89bcacea45786
deleted file mode 100644
index da1e893..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c09d8879cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 18 13:48:06 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iEventId :: 14
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/e0272d7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/e0272d7add0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/b9/e0272d7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ba/8046b1d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ba/8046b1d3e10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ba/8046b1d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/10f0347add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/10f0347add0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/10f0347add0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/d00485cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/d00485cc7506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bb/d00485cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bc/d0538679cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bc/d0538679cd0100181ce89bcacea45786
deleted file mode 100644
index 3a02123..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bc/d0538679cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* MODULE PARAMETERS */
--u _GBL_setPLLto225MHz
-GBL_USERINITFXN = _GBL_setPLLto225MHz;
-
--u MEM_NULL
-MEM_SEGZERO = MEM_NULL;
--u MEM_NULL
-MEM_MALLOCSEG = MEM_NULL;
-
--u CLK_F_getshtime
-CLK_TIMEFXN = CLK_F_getshtime;
--u HWI_F_dispatch
-CLK_HOOKFXN = HWI_F_dispatch;
-
--u _KNL_tick
-PRD_THOOKFXN = _KNL_tick;
-
--u IRAM
-RTDX_DATAMEMSEG = IRAM;
-
--u IRAM
-HST_DSMBUFSEG = IRAM;
-
--u GBL_NULL
-SWI_EHOOKFXN = GBL_NULL;
--u GBL_NULL
-SWI_IHOOKFXN = GBL_NULL;
--u SWI_F_exec
-SWI_EXECFXN = SWI_F_exec;
--u SWI_F_run
-SWI_RUNFXN = SWI_F_run;
-
--u MEM_NULL
-TSK_STACKSEG = MEM_NULL;
--u _FXN_F_nop
-TSK_VCREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VDELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VEXITFXN = _FXN_F_nop;
-
--u IDL_F_stub
-IDL_CALIBRFXN = IDL_F_stub;
-
--u _UTL_doAbort
-SYS_ABORTFXN = _UTL_doAbort;
--u _UTL_doError
-SYS_ERRORFXN = _UTL_doError;
--u _UTL_halt
-SYS_EXITFXN = _UTL_halt;
--u _UTL_doPutc
-SYS_PUTCFXN = _UTL_doPutc;
-
--u _FXN_F_nop
-GIO_CREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_DELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_PENDFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_POSTFXN = _FXN_F_nop;
-
-/* OBJECT ALIASES */
-_SDRAM = SDRAM;
-_IRAM = IRAM;
-_PRD_clock = PRD_clock;
-_RTA_fromHost = RTA_fromHost;
-_RTA_toHost = RTA_toHost;
-_HWI_RESET = HWI_RESET;
-_HWI_NMI = HWI_NMI;
-_HWI_RESERVED0 = HWI_RESERVED0;
-_HWI_RESERVED1 = HWI_RESERVED1;
-_HWI_INT4 = HWI_INT4;
-_HWI_INT5 = HWI_INT5;
-_HWI_INT6 = HWI_INT6;
-_HWI_INT7 = HWI_INT7;
-_HWI_INT8 = HWI_INT8;
-_HWI_INT9 = HWI_INT9;
-_HWI_INT10 = HWI_INT10;
-_HWI_INT11 = HWI_INT11;
-_HWI_INT12 = HWI_INT12;
-_HWI_INT13 = HWI_INT13;
-_HWI_INT14 = HWI_INT14;
-_HWI_INT15 = HWI_INT15;
-_KNL_swi = KNL_swi;
-_TSK_idle = TSK_idle;
-_IDL_cpuLoad = IDL_cpuLoad;
-_LNK_dataPump = LNK_dataPump;
-_RTA_dispatcher = RTA_dispatcher;
-_LOG_system = LOG_system;
-_IDL_busyObj = IDL_busyObj;
-
-/* MODULE GBL */
-
-SECTIONS {
- .vers (COPY): {} /* version information */
-}
-
--priority
---trampolines
--llnkrtdx.a67
--ldrivers.a67 /* device drivers support */
--lsioboth.a67 /* supports both SIO models */
--lbiosC6000.a67 /* BIOS clock specific library */
--lbios6x1x.a67 /* BIOS c6x1x specific library */
--lbios.a67 /* DSP/BIOS support */
--lrtdx.lib /* RTDX support */
--lrts6700.lib /* C and C++ run-time library support */
-
-_GBL_CACHE = GBL_CACHE;
-
-/* MODULE MEM */
--stack 0x400
-MEMORY {
- SDRAM : origin = 0x80000000, len = 0x800000
- IRAM : origin = 0x0, len = 0x40000
-}
-/* MODULE CLK */
-SECTIONS {
- .clk: {
-
- CLK_F_gethtime = CLK_F_getshtime;
- *(.clk)
- } > IRAM, RUN_START(CLK_A_TABBEG)
-}
-_CLK_PRD = CLK_PRD;
-_CLK_COUNTSPMS = CLK_COUNTSPMS;
-_CLK_REGS = CLK_REGS;
-_CLK_USETIMER = CLK_USETIMER;
-_CLK_TIMERNUM = CLK_TIMERNUM;
-_CLK_TDDR = CLK_TDDR;
-
-/* MODULE PRD */
-SECTIONS {
- .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {
- } > IRAM
-}
-PRD_A_TABLEN = 0;
-
-/* MODULE RTDX */
-_RTDX_interrupt_mask = 0x0;
-
-/* MODULE HST */
-_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask;
-_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask;
-_LNK_readDone = LNK_readDone;
-_LNK_readFail = LNK_readFail;
-_LNK_readPend = LNK_readPend;
-_LNK_writeFail = LNK_writeFail;
-/* MODULE HWI */
-SECTIONS {
- .hwi_vec: 0x0 {
- HWI_A_VECS = .;
- *(.hwi_vec)
- }
-}
-
-_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;
-
-/* MODULE SWI */
-SECTIONS {
- .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {
- } > IRAM
-}
-SWI_A_TABLEN = 1;
-
-/* MODULE TSK */
-SECTIONS {
- .tsk: {
- *(.tsk)
- } > IRAM
-}
-
-/* MODULE IDL */
-SECTIONS {
- .idl: {
- *(.idl)
- } > IRAM, RUN_START(IDL_A_TABBEG)
-
- .idlcal: {
- *(.idlcal)
- } > IRAM, RUN_START(IDL_A_CALBEG)
-}
-
-
-LOG_A_TABLEN = 1; _LOG_A_TABLEN = 1;
-
-PIP_A_TABLEN = 2;
-
-
-SECTIONS {
- .bss: {} > IRAM
-
- .far: {} > IRAM
-
- .sysdata: {} > IRAM
-
- .dsm: {} > IRAM
-
- frt: {} > IRAM
-
- .mem: {} > IRAM
-
- .bios: {} > IRAM
-
- .cio: {} > IRAM
-
- .data: {} > IRAM
-
- .gio: {} > IRAM
-
- .pinit: {} > IRAM
-
- .sys: {} > IRAM
-
- .sysregs: {} > IRAM
-
- .text: {} > IRAM
-
- .cinit: {} > IRAM
-
- .switch: {} > IRAM
-
- .gblinit: {} > IRAM
-
- .sysinit: {} > IRAM
-
- .trcdata: {} > IRAM
-
- .hwi: {} > IRAM
-
- .rtdx_data: {} > IRAM
-
- .rtdx_text: {} > IRAM
-
- .TSK_idle$stk: {
- *(.TSK_idle$stk)
- } > IRAM
-
- /* LOG_system buffer */
- .LOG_system$buf: align = 0x100 {} > IRAM
-
- /* RTA_fromHost buffer */
- .hst1: align = 0x4 {} > IRAM
-
- /* RTA_toHost buffer */
- .hst0: align = 0x4 {} > IRAM
-
- GROUP {
- .const: align = 0x8 {}
- .printf (COPY): {}
- } > IRAM
-
- .args: align=4 fill=0 {
- *(.args)
- . += 0x4;
- } > IRAM
-
- .trace: fill = 0x0 align = 0x4 {
- _SYS_PUTCBEG = .;
- . += 0x200;
- _SYS_PUTCEND = . - 1;
- } > IRAM
-
- .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) {
- } > IRAM
-
- .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) {
- } > IRAM
-
- .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) {
- } > IRAM
-
- .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) {
- } > IRAM
-
- .stack: align = 0x8 {
- GBL_stackbeg = .;
- *(.stack)
- GBL_stackend = GBL_stackbeg + 0x400 - 1;
- _HWI_STKBOTTOM = GBL_stackbeg + 0x400 - 8;
- _HWI_STKTOP = GBL_stackbeg;
- } > IRAM
-
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/203c90d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/203c90d57506001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/203c90d57506001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/90468379cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/90468379cd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/90468379cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b01fa8277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b01fa8277506001814daa3a49c232c18
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b01fa8277506001814daa3a49c232c18
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/705ae9f244070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/705ae9f244070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/705ae9f244070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0849479cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0849479cd0100181ce89bcacea45786
deleted file mode 100644
index cf7edbe..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/be/a0849479cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Tue Jan 23 11:15:03 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iEventId :: 14
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/3090e2157506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/3090e2157506001814daa3a49c232c18
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/3090e2157506001814daa3a49c232c18
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b05cd83ddd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b05cd83ddd0100181ce89bcacea45786
deleted file mode 100644
index d21d154..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b05cd83ddd0100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {-
- x[i] = x[i-1];
- }
- x[0] = sample_in / 32767;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0d18111e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0d18111e10100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0d18111e10100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/206a048f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/206a048f41070018153483e962c7925e
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/206a048f41070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/809ffb2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/809ffb2ddf0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c0/809ffb2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/301b9717d90100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/301b9717d90100181ce89bcacea45786
deleted file mode 100644
index 5bcb1a0..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/301b9717d90100181ce89bcacea45786
+++ /dev/null
@@ -1,146 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-
-short non_circ_fir()
-{
-
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/90edf3e4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/90edf3e4e50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c1/90edf3e4e50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/c0d92c7add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/c0d92c7add0100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/c0d92c7add0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/f02e74c17406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/f02e74c17406001814daa3a49c232c18
deleted file mode 100644
index 3798072..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c2/f02e74c17406001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c3/102baf173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c3/102baf173f070018153483e962c7925e
deleted file mode 100644
index 9a787ac..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c3/102baf173f070018153483e962c7925e
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Wed Jan 31 11:01:14 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c4/f03c714c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c4/f03c714c7506001814daa3a49c232c18
deleted file mode 100644
index a134cb6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c4/f03c714c7506001814daa3a49c232c18
+++ /dev/null
@@ -1,1755 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Wed Jan 31 10:54:50 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a900
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd27 000342d9 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002360
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000320 intio.obj (.text)
- 00005180 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005460 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056a0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005860 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a00 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005b80 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d00 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e40 00000120 : sinit.obj (.text:_call_dtors)
- 00005f60 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006060 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006160 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00006260 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006340 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006420 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 000064e0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006580 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 000065c0 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006600 00000040 : divf.obj (.text:___isnanf)
- 00006640 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006660 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006680 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066a0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 000066c0 00000020 : _lock.obj (.text:__register_lock)
- 000066e0 00000020 : _lock.obj (.text:__register_unlock)
- 00006700 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006720 00001754
- 00006720 00000810 intio.obj (.cinit)
- 00006f30 00000564 dsp_bios_cfg.obj (.cinit)
- 00007494 00000004 --HOLE-- [fill = 0]
- 00007498 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007704 00000004 --HOLE-- [fill = 0]
- 00007708 000001a4 : knl.o67 (.cinit)
- 000078ac 00000004 --HOLE-- [fill = 0]
- 000078b0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 000079dc 00000004 --HOLE-- [fill = 0]
- 000079e0 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007a90 00000070 : tsk.o67 (.cinit)
- 00007b00 00000060 : tsk_stup.o67 (.cinit)
- 00007b60 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bbc 00000004 --HOLE-- [fill = 0]
- 00007bc0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c14 00000004 --HOLE-- [fill = 0]
- 00007c18 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c64 00000004 --HOLE-- [fill = 0]
- 00007c68 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cb4 00000004 --HOLE-- [fill = 0]
- 00007cb8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007cec 00000004 --HOLE-- [fill = 0]
- 00007cf0 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d20 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d4c 00000004 --HOLE-- [fill = 0]
- 00007d50 0000002c rts6700.lib : exit.obj (.cinit)
- 00007d7c 00000004 --HOLE-- [fill = 0]
- 00007d80 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007da4 00000004 --HOLE-- [fill = 0]
- 00007da8 0000001c : sys.o67 (.cinit)
- 00007dc4 00000004 --HOLE-- [fill = 0]
- 00007dc8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007de4 00000004 --HOLE-- [fill = 0]
- 00007de8 0000001c : atexit.obj (.cinit)
- 00007e04 00000004 --HOLE-- [fill = 0]
- 00007e08 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e20 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e30 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e3c 00000004 --HOLE-- [fill = 0]
- 00007e40 0000000c : idl_busy.o67 (.cinit)
- 00007e4c 00000004 --HOLE-- [fill = 0]
- 00007e50 0000000c : knl_swit.o67 (.cinit)
- 00007e5c 00000004 --HOLE-- [fill = 0]
- 00007e60 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007e74 00000004
- 00007e74 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007e78 000014c8 UNINITIALIZED
- 00007e78 00000fb8 intio.obj (.far)
- 00008e30 00000188 rts6700.lib : atexit.obj (.far)
- 00008fb8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090ac 000000d8 bios.a67 : knl.o67 (.far)
- 00009184 0000005c : tsk.o67 (.far)
- 000091e0 00000054 : obj_init.o67 (.far)
- 00009234 00000050 : tsk_stup.o67 (.far)
- 00009284 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092bc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 000092e4 00000020 bios.a67 : sys.o67 (.far)
- 00009304 00000010 : knl_tick.o67 (.far)
- 00009314 0000000c : utl_putc.o67 (.far)
- 00009320 0000000c rts6700.lib : exit.obj (.far)
- 0000932c 00000008 : _lock.obj (.far)
- 00009334 00000008 : divf.obj (.far)
- 0000933c 00000004 : sinit.obj (.far)
-
-.rtdx_text
-* 0 00009340 00000ea0
- 00009340 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009740 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009a80 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009d80 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009ec0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fa0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a020 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a080 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a0e0 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a120 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a160 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a180 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1a0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a1c0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a1e0 0000044c UNINITIALIZED
- 0000a1e0 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a5f0 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a610 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 0000a62c 00000010 UNINITIALIZED
- 0000a62c 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 0000a640 00000420
- 0000a640 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a900 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a9c0 00000080 : tsk_init.o67 (.sysinit)
- 0000aa40 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aa60 00000400 UNINITIALIZED
- 0000aa60 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000ae60 00000400 UNINITIALIZED
- 0000ae60 00000400 --HOLE--
-
-.bss 0 0000b260 00000342 UNINITIALIZED
- 0000b260 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b360 000000cc : biosdata.o67 (.bss)
- 0000b42c 0000009c : swi.o67 (.bss)
- 0000b4c8 00000048 : knl.o67 (.bss)
- 0000b510 00000018 : hwi.o67 (.bss)
- 0000b528 00000018 dsp_bios_cfg.obj (.bss)
- 0000b540 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b558 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b568 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b574 00000008 : clk_data.o67 (.bss)
- 0000b57c 00000008 : sys.o67 (.bss)
- 0000b584 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b58c 00000008 intio.obj (.bss)
- 0000b594 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b598 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b59c 00000004 : idl_busy.o67 (.bss)
- 0000b5a0 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5a4 00000200
- 0000b5a4 00000200 --HOLE-- [fill = 00000000]
-
-.gblinit 0 0000b7a4 00000040
- 0000b7a4 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.log 0 0000b7e4 00000018
- 0000b7e4 00000018 dsp_bios_cfg.obj (.log)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.hst 0 0000bc24 0000003c UNINITIALIZED
- 0000bc24 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bc60 00000030
- 0000bc60 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bc90 0000002c UNINITIALIZED
- 0000bc90 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcbc 00000028
- 0000bcbc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idl 0 0000bce4 00000010 UNINITIALIZED
- 0000bce4 00000010 dsp_bios_cfg.obj (.idl)
-
-.idlcal 0 0000bcf4 00000010 UNINITIALIZED
- 0000bcf4 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd04 00000010 UNINITIALIZED
- 0000bd04 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd14 0000000c
- 0000bd14 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd18 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd1c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd20 0000000c
- 0000bd20 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd2c 00000008 UNINITIALIZED
- 0000bd2c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b260 $bss
-0000b260 .bss
-00000000 .data
-000043c0 .text
-0000a7e4 BIOS$$CLKOFF
-0000a7a4 BIOS$$CLKON
-0000a640 BIOS_init
-0000a84c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd2c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b388 CLK_D_idletime
-0000b384 CLK_D_isrhook
-0000b380 CLK_D_tabbeg
-0000b37c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b378 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd30 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a28 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd28 GBL_initdone
-0000ae60 GBL_stackbeg
-0000b25f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bc24 HST_A_TABBEG
-0000bc60 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b3f4 HST_D_chanmask
-0000b3f8 HST_D_tabbeg
-0000b3fc HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b520 HWI_D_bss
-0000b524 HWI_D_ccmask
-0000b510 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bcf4 IDL_A_CALBEG
-0000bce4 IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b59c IDL_D_busyObj
-0000b368 IDL_D_calbeg
-0000b364 IDL_D_calibrate
-0000b360 IDL_D_tabbeg
-0000bcf0 IDL_END
-0000bd00 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bc84 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bc80 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000bce4 IDL_cpuLoad
-0000bcf4 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bc90 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bc64 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bc60 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000bce8 LNK_dataPump
-0000bcf8 LNK_dataPump$
-0000b544 LNK_dspFrameReadyMask
-0000b540 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b54c LNK_readDone
-0000b550 LNK_readFail
-0000b548 LNK_readPend
-00000370 LNK_rrloop
-0000b554 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000b7e4 LOG_A_TABBEG
-0000b7fc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b36c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000b7e4 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b370 PIP_D_tabbeg
-0000b374 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3b0 PRD_D_cur
-0000b3b4 PRD_D_elapsed
-0000b3b8 PRD_D_prevtim
-0000b3bc PRD_D_scalar
-0000b3c0 PRD_D_swihandle
-0000b3c4 PRD_D_tabbeg
-0000b3c8 PRD_D_tablen
-0000b3cc PRD_D_thook
-0000b3ac PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd2c PRD_clock
-00000001 QUE$
-0000b3d0 RTA_D_fromHost
-0000b3d8 RTA_D_logval
-0000b3e8 RTA_D_stsval
-0000b3d4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000bcec RTA_dispatcher
-0000bcfc RTA_dispatcher$
-00001f28 RTA_execute
-0000bc28 RTA_fromHost
-0000a62c RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b528 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000bc30 RTA_fromHost$rtdx
-0000bc44 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b534 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000bc4c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bc60 STS_A_TABBEG
-0000bc90 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bc90 SWI_A_TABBEG
-0000bcbc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b444 SWI_D_curfxn
-0000b434 SWI_D_curmask
-0000b440 SWI_D_curmbox
-0000b438 SWI_D_curset
-0000b430 SWI_D_execaddr
-0000b44c SWI_D_inswi
-0000b43c SWI_D_lock
-0000b448 SWI_D_rdybeg
-0000b450 SWI_D_rdytab
-0000b42c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd04 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd24 TRC_R_mask
-0000bd20 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aa60 TSK_idle$stack
-0000adf8 TSK_idle$stkptr
-0000bc74 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bc70 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a640 _BIOS_init
-0000a84c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b574 _CLK_DFLTMICROSECS
-0000b3a8 _CLK_D_countspms
-0000b39c _CLK_D_dirty
-0000b578 _CLK_D_microseconds
-0000b3a0 _CLK_D_prd
-0000b3a4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b38c _CLK_htimeDiv
-0000b390 _CLK_htimeMult
-0000b594 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b394 _CLK_ltimeDiv
-0000b398 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e08 _Config
-0000b584 _DSK6713_AIC23_codeccontrolhandle
-0000b588 _DSK6713_AIC23_codecdatahandle
-00005c6c _DSK6713_AIC23_config
-00005180 _DSK6713_AIC23_openCodec
-00005c48 _DSK6713_AIC23_rget
-00005b80 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5a0 _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b404 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b408 _GBL_freq
-00004320 _GBL_getVersion
-0000b400 _GBL_procId
-00005a28 _GBL_setPLLto225MHz
-0000bc24 _HST_A_TABBEG
-0000bc60 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b51c _HWI_D_inhwi
-0000b510 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b258 _HWI_STKBOTTOM
-0000ae60 _HWI_STKTOP
-0000b510 _HWI_data
-00004020 _HWI_disable
-0000b260 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b590 _H_Codec
-0000bc84 _IDL_busyObj
-0000bce4 _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006580 _IRQ_enable
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-000056a0 _IRQ_map
-00006680 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b4d0 _KNL_alarm
-00003440 _KNL_check
-0000b4f4 _KNL_curqueue
-0000b4e4 _KNL_curtask
-0000b4ec _KNL_curtime
-0000914c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b50c _KNL_idlefxn
-0000b4d8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b4f8 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b4e8 _KNL_prevtask
-0000b4dc _KNL_priority
-000090ac _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b4e0 _KNL_set
-0000b4d4 _KNL_setpri
-0000bc90 _KNL_swi
-0000b4f0 _KNL_swiptr
-00002cec _KNL_switch
-0000b500 _KNL_tcreatefxn
-0000b504 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b508 _KNL_treadyfxn
-0000b4fc _KNL_tswitchfxn
-0000b4c8 _KNL_wFlag
-0000b4cc _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000bce8 _LNK_dataPump
-0000b544 _LNK_dspFrameReadyMask
-0000b540 _LNK_dspFrameRequestMask
-0000b54c _LNK_readDone
-0000b550 _LNK_readFail
-0000b548 _LNK_readPend
-0000b554 _LNK_writeFail
-0000b7e4 _LOG_A_TABBEG
-0000b7fc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b36c _LOG_D_system
-00003ea0 _LOG_event
-0000b7e4 _LOG_system
-00005f60 _MCBSP_open
-00005860 _MCBSP_reset
-00006060 _MCBSP_start
-0000b40c _MEM_D_NUMSEGMENTS
-0000b414 _MEM_D_freelist
-0000b418 _MEM_D_lockaddr
-0000b410 _MEM_D_memtab
-0000b41c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa40 _OBJ_init
-00009218 _OBJ_segtab
-000091e0 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3ac _PRD_D_tick
-0000bd2c _PRD_clock
-0000bcec _RTA_dispatcher
-0000bc28 _RTA_fromHost
-0000bc44 _RTA_toHost
-0000a1e0 _RTDX_Buffer
-0000a5ec _RTDX_Buffer_End
-0000a020 _RTDX_Buffer_Initialize
-0000a160 _RTDX_Buffer_Read
-0000a080 _RTDX_Buffer_ReadCB
-0000a0e0 _RTDX_Buffer_Size
-0000a5e8 _RTDX_Buffer_Start
-0000a180 _RTDX_Buffer_Write
-00009740 _RTDX_Buffer_WriteCB
-0000a120 _RTDX_Final_RT_Monitor
-00009fa0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a1c0 _RTDX_Mask_IER
-00009d80 _RTDX_Mon_Queue
-00009340 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a5fc _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bc60 _STS_A_TABBEG
-0000bc90 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b444 _SWI_D_curfxn
-0000b434 _SWI_D_curmask
-0000b438 _SWI_D_curset
-0000b430 _SWI_D_execaddr
-0000b44c _SWI_D_inswi
-0000b43c _SWI_D_lock
-0000b448 _SWI_D_rdybeg
-0000b42c _SWI_D_runaddr
-0000b42c _SWI_data
-00000e50 _SWI_post
-0000b420 _SYS
-0000b5a4 _SYS_PUTCBEG
-0000b7a3 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-000092e4 _SYS_exitStack
-0000b57c _SYS_exitStackPtr
-0000b580 _SYS_exitStackTop
-0000bd24 _TRC_R_mask
-0000b570 _TSK
-00009184 _TSK_ATTRS
-000091a0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000a9c0 _TSK_init
-0000b568 _TSK_nTasks
-0000b56c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091c0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b428 __HOOK_NUMHOOKS
-0000b424 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090a4 __IRQ_dispatchTable
-00008fe0 __IRQ_eventTable
-00006700 __IRQ_hookFetchPacket
-00009064 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092b4 __MCBSP_hDev0
-000092b8 __MCBSP_hDev1
-0000925c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009234 __TSK_mutex
-00009328 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-000065c0 ___add_dtor
-00008e30 ___atexit_func_id__
-ffffffff ___binit__
-0000b260 ___bss__
-ffffffff ___c_args__
-00006720 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5a2 ___end__
-00006720 ___etext__
-0000bd14 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009320 __cleanup_ptr
-000043c0 __divf
-00009324 __dtors_ptr
-00006260 __frcmpyf_div
-0000932c __lock
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-0000ae60 __stack
-00005d00 __strasgi
-00009330 __unlock
-00006160 _atexit
-00007e78 _b
-00008640 _buffer
-0000a900 _c_int00
-00005e40 _call_dtors
-0000933c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-00005460 _memcpy
-000063bc _mono_read_16Bit
-00006394 _mono_write_16Bit
-00005098 _non_circ_fir
-0000b58c _ptr
-0000b560 _rtdxNullChanCnt
-0000b564 _rtdxNullFuncCnt
-0000a5f0 _rtdx_buffer_state
-0000a610 _rtdx_mon_state
-00006368 _stereo_read_16Bit
-00006340 _stereo_write_16Bit
-00005a00 _wait500nS
-ffffffff binit
-00006720 cinit
-00000000 edata
-0000b5a2 end
-00006720 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd14 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-00005098 _non_circ_fir
-00005180 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-00005460 _memcpy
-000056a0 _IRQ_map
-00005860 _MCBSP_reset
-00005a00 _wait500nS
-00005a28 GBL_USERINITFXN
-00005a28 _GBL_setPLLto225MHz
-00005b80 _DSK6713_AIC23_rset
-00005c48 _DSK6713_AIC23_rget
-00005c6c _DSK6713_AIC23_config
-00005d00 __strasgi
-00005e40 _call_dtors
-00005f60 _MCBSP_open
-00006060 _MCBSP_start
-00006160 _atexit
-00006260 __frcmpyf_div
-00006340 _stereo_write_16Bit
-00006368 _stereo_read_16Bit
-00006394 _mono_write_16Bit
-000063bc _mono_read_16Bit
-00006580 _IRQ_enable
-000065c0 ___add_dtor
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-00006680 _IRQ_nmiEnable
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-00006700 __IRQ_hookFetchPacket
-00006720 ___cinit__
-00006720 ___etext__
-00006720 cinit
-00006720 etext
-00007e78 _b
-00008640 _buffer
-00008e08 _Config
-00008e30 ___atexit_func_id__
-00008fe0 __IRQ_eventTable
-00009064 __IRQ_intTable
-000090a4 __IRQ_dispatchTable
-000090ac _KNL_queues
-0000914c _KNL_dummy
-00009184 _TSK_ATTRS
-000091a0 _TSK_config
-000091c0 _TSK_timerSem
-000091e0 _OBJ_table
-00009218 _OBJ_segtab
-00009234 __TSK_mutex
-0000925c __MEM_mutex
-000092b4 __MCBSP_hDev0
-000092b8 __MCBSP_hDev1
-000092e4 _SYS_exitStack
-00009320 __cleanup_ptr
-00009324 __dtors_ptr
-00009328 ___TI_enable_exit_profile_output
-0000932c __lock
-00009330 __unlock
-0000933c _dtors
-00009340 _RTDX_Poll
-00009740 _RTDX_Buffer_WriteCB
-00009d80 _RTDX_Mon_Queue
-00009fa0 _RTDX_Init_RT_Monitor
-0000a020 _RTDX_Buffer_Initialize
-0000a080 _RTDX_Buffer_ReadCB
-0000a0e0 _RTDX_Buffer_Size
-0000a120 _RTDX_Final_RT_Monitor
-0000a160 _RTDX_Buffer_Read
-0000a180 _RTDX_Buffer_Write
-0000a1c0 _RTDX_Mask_IER
-0000a1e0 _RTDX_Buffer
-0000a5e8 _RTDX_Buffer_Start
-0000a5ec _RTDX_Buffer_End
-0000a5f0 _rtdx_buffer_state
-0000a5fc _RTDX_writing
-0000a610 _rtdx_mon_state
-0000a62c RTA_fromHost$buf
-0000a640 BIOS_init
-0000a640 _BIOS_init
-0000a7a4 BIOS$$CLKON
-0000a7e4 BIOS$$CLKOFF
-0000a84c BIOS_start
-0000a84c _BIOS_start
-0000a900 _c_int00
-0000a9c0 _TSK_init
-0000aa40 _OBJ_init
-0000aa60 TSK_idle$stack
-0000adf8 TSK_idle$stkptr
-0000ae60 GBL_stackbeg
-0000ae60 _HWI_STKTOP
-0000ae60 __stack
-0000b258 _HWI_STKBOTTOM
-0000b25f GBL_stackend
-0000b260 $bss
-0000b260 .bss
-0000b260 _HWI_dispatchTab
-0000b260 ___bss__
-0000b360 IDL_D_tabbeg
-0000b364 IDL_D_calibrate
-0000b368 IDL_D_calbeg
-0000b36c LOG_D_system
-0000b36c _LOG_D_system
-0000b370 PIP_D_tabbeg
-0000b374 PIP_D_tablen
-0000b378 CLK_R_time
-0000b37c CLK_D_timefxn
-0000b380 CLK_D_tabbeg
-0000b384 CLK_D_isrhook
-0000b388 CLK_D_idletime
-0000b38c _CLK_htimeDiv
-0000b390 _CLK_htimeMult
-0000b394 _CLK_ltimeDiv
-0000b398 _CLK_ltimeMult
-0000b39c _CLK_D_dirty
-0000b3a0 _CLK_D_prd
-0000b3a4 _CLK_D_tddr
-0000b3a8 _CLK_D_countspms
-0000b3ac PRD_D_tick
-0000b3ac _PRD_D_tick
-0000b3b0 PRD_D_cur
-0000b3b4 PRD_D_elapsed
-0000b3b8 PRD_D_prevtim
-0000b3bc PRD_D_scalar
-0000b3c0 PRD_D_swihandle
-0000b3c4 PRD_D_tabbeg
-0000b3c8 PRD_D_tablen
-0000b3cc PRD_D_thook
-0000b3d0 RTA_D_fromHost
-0000b3d4 RTA_D_toHost
-0000b3d8 RTA_D_logval
-0000b3e8 RTA_D_stsval
-0000b3f4 HST_D_chanmask
-0000b3f8 HST_D_tabbeg
-0000b3fc HST_D_tabend
-0000b400 _GBL_procId
-0000b404 _GBL_clkIn
-0000b408 _GBL_freq
-0000b40c _MEM_D_NUMSEGMENTS
-0000b410 _MEM_D_memtab
-0000b414 _MEM_D_freelist
-0000b418 _MEM_D_lockaddr
-0000b41c _MEM_D_unlockaddr
-0000b420 _SYS
-0000b424 __HOOK_knlId
-0000b428 __HOOK_NUMHOOKS
-0000b42c SWI_D_runaddr
-0000b42c _SWI_D_runaddr
-0000b42c _SWI_data
-0000b430 SWI_D_execaddr
-0000b430 _SWI_D_execaddr
-0000b434 SWI_D_curmask
-0000b434 _SWI_D_curmask
-0000b438 SWI_D_curset
-0000b438 _SWI_D_curset
-0000b43c SWI_D_lock
-0000b43c _SWI_D_lock
-0000b440 SWI_D_curmbox
-0000b444 SWI_D_curfxn
-0000b444 _SWI_D_curfxn
-0000b448 SWI_D_rdybeg
-0000b448 _SWI_D_rdybeg
-0000b44c SWI_D_inswi
-0000b44c _SWI_D_inswi
-0000b450 SWI_D_rdytab
-0000b4c8 _KNL_wFlag
-0000b4cc _KNL_wList
-0000b4d0 _KNL_alarm
-0000b4d4 _KNL_setpri
-0000b4d8 _KNL_inactive
-0000b4dc _KNL_priority
-0000b4e0 _KNL_set
-0000b4e4 _KNL_curtask
-0000b4e8 _KNL_prevtask
-0000b4ec _KNL_curtime
-0000b4f0 _KNL_swiptr
-0000b4f4 _KNL_curqueue
-0000b4f8 _KNL_maxqueue
-0000b4fc _KNL_tswitchfxn
-0000b500 _KNL_tcreatefxn
-0000b504 _KNL_tdeletefxn
-0000b508 _KNL_treadyfxn
-0000b50c _KNL_idlefxn
-0000b510 HWI_D_spsave
-0000b510 _HWI_D_spsave
-0000b510 _HWI_data
-0000b51c _HWI_D_inhwi
-0000b520 HWI_D_bss
-0000b524 HWI_D_ccmask
-0000b528 RTA_fromHost$pipe$dtab
-0000b534 RTA_toHost$pipe$dtab
-0000b540 LNK_dspFrameRequestMask
-0000b540 _LNK_dspFrameRequestMask
-0000b544 LNK_dspFrameReadyMask
-0000b544 _LNK_dspFrameReadyMask
-0000b548 LNK_readPend
-0000b548 _LNK_readPend
-0000b54c LNK_readDone
-0000b54c _LNK_readDone
-0000b550 LNK_readFail
-0000b550 _LNK_readFail
-0000b554 LNK_writeFail
-0000b554 _LNK_writeFail
-0000b560 _rtdxNullChanCnt
-0000b564 _rtdxNullFuncCnt
-0000b568 _TSK_nTasks
-0000b56c _TSK_pid
-0000b570 _TSK
-0000b574 _CLK_DFLTMICROSECS
-0000b578 _CLK_D_microseconds
-0000b57c _SYS_exitStackPtr
-0000b580 _SYS_exitStackTop
-0000b584 _DSK6713_AIC23_codeccontrolhandle
-0000b588 _DSK6713_AIC23_codecdatahandle
-0000b58c _ptr
-0000b590 _H_Codec
-0000b594 _CLK_htimePerLtime
-0000b59c IDL_D_busyObj
-0000b5a0 _DSK6713_version
-0000b5a2 ___end__
-0000b5a2 end
-0000b5a4 _SYS_PUTCBEG
-0000b7a3 _SYS_PUTCEND
-0000b7e4 LOG_A_TABBEG
-0000b7e4 LOG_system
-0000b7e4 _LOG_A_TABBEG
-0000b7e4 _LOG_system
-0000b7fc LOG_A_TABEND
-0000b7fc _LOG_A_TABEND
-0000b800 LOG_system$buf
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc24 HST_A_TABBEG
-0000bc24 _HST_A_TABBEG
-0000bc28 RTA_fromHost
-0000bc28 _RTA_fromHost
-0000bc30 RTA_fromHost$rtdx
-0000bc44 RTA_toHost
-0000bc44 _RTA_toHost
-0000bc4c RTA_toHost$rtdx
-0000bc60 HST_A_TABEND
-0000bc60 KNL_swi$sts$stsobj
-0000bc60 STS_A_TABBEG
-0000bc60 _HST_A_TABEND
-0000bc60 _STS_A_TABBEG
-0000bc64 KNL_swi$sts
-0000bc70 TSK_idle$sts$stsobj
-0000bc74 TSK_idle$sts
-0000bc80 IDL_busyObj$stsobj
-0000bc84 IDL_busyObj
-0000bc84 _IDL_busyObj
-0000bc90 KNL_swi
-0000bc90 STS_A_TABEND
-0000bc90 SWI_A_TABBEG
-0000bc90 _KNL_swi
-0000bc90 _STS_A_TABEND
-0000bcbc SWI_A_TABEND
-0000bce4 IDL_A_TABBEG
-0000bce4 IDL_cpuLoad
-0000bce4 _IDL_cpuLoad
-0000bce8 LNK_dataPump
-0000bce8 _LNK_dataPump
-0000bcec RTA_dispatcher
-0000bcec _RTA_dispatcher
-0000bcf0 IDL_END
-0000bcf4 IDL_A_CALBEG
-0000bcf4 IDL_cpuLoad$
-0000bcf8 LNK_dataPump$
-0000bcfc RTA_dispatcher$
-0000bd00 IDL_END$
-0000bd04 SYS$config
-0000bd14 ___pinit__
-0000bd14 pinit
-0000bd20 TRC_cinit
-0000bd24 TRC_R_mask
-0000bd24 _TRC_R_mask
-0000bd28 GBL_initdone
-0000bd2c CLK_A_TABBEG
-0000bd2c PRD_clock
-0000bd2c _PRD_clock
-0000bd30 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[718 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c5/c05212167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c5/c05212167506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c5/c05212167506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/50aa8279cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/50aa8279cd0100181ce89bcacea45786
deleted file mode 100644
index 3a02123..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/50aa8279cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* MODULE PARAMETERS */
--u _GBL_setPLLto225MHz
-GBL_USERINITFXN = _GBL_setPLLto225MHz;
-
--u MEM_NULL
-MEM_SEGZERO = MEM_NULL;
--u MEM_NULL
-MEM_MALLOCSEG = MEM_NULL;
-
--u CLK_F_getshtime
-CLK_TIMEFXN = CLK_F_getshtime;
--u HWI_F_dispatch
-CLK_HOOKFXN = HWI_F_dispatch;
-
--u _KNL_tick
-PRD_THOOKFXN = _KNL_tick;
-
--u IRAM
-RTDX_DATAMEMSEG = IRAM;
-
--u IRAM
-HST_DSMBUFSEG = IRAM;
-
--u GBL_NULL
-SWI_EHOOKFXN = GBL_NULL;
--u GBL_NULL
-SWI_IHOOKFXN = GBL_NULL;
--u SWI_F_exec
-SWI_EXECFXN = SWI_F_exec;
--u SWI_F_run
-SWI_RUNFXN = SWI_F_run;
-
--u MEM_NULL
-TSK_STACKSEG = MEM_NULL;
--u _FXN_F_nop
-TSK_VCREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VDELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-TSK_VEXITFXN = _FXN_F_nop;
-
--u IDL_F_stub
-IDL_CALIBRFXN = IDL_F_stub;
-
--u _UTL_doAbort
-SYS_ABORTFXN = _UTL_doAbort;
--u _UTL_doError
-SYS_ERRORFXN = _UTL_doError;
--u _UTL_halt
-SYS_EXITFXN = _UTL_halt;
--u _UTL_doPutc
-SYS_PUTCFXN = _UTL_doPutc;
-
--u _FXN_F_nop
-GIO_CREATEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_DELETEFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_PENDFXN = _FXN_F_nop;
--u _FXN_F_nop
-GIO_POSTFXN = _FXN_F_nop;
-
-/* OBJECT ALIASES */
-_SDRAM = SDRAM;
-_IRAM = IRAM;
-_PRD_clock = PRD_clock;
-_RTA_fromHost = RTA_fromHost;
-_RTA_toHost = RTA_toHost;
-_HWI_RESET = HWI_RESET;
-_HWI_NMI = HWI_NMI;
-_HWI_RESERVED0 = HWI_RESERVED0;
-_HWI_RESERVED1 = HWI_RESERVED1;
-_HWI_INT4 = HWI_INT4;
-_HWI_INT5 = HWI_INT5;
-_HWI_INT6 = HWI_INT6;
-_HWI_INT7 = HWI_INT7;
-_HWI_INT8 = HWI_INT8;
-_HWI_INT9 = HWI_INT9;
-_HWI_INT10 = HWI_INT10;
-_HWI_INT11 = HWI_INT11;
-_HWI_INT12 = HWI_INT12;
-_HWI_INT13 = HWI_INT13;
-_HWI_INT14 = HWI_INT14;
-_HWI_INT15 = HWI_INT15;
-_KNL_swi = KNL_swi;
-_TSK_idle = TSK_idle;
-_IDL_cpuLoad = IDL_cpuLoad;
-_LNK_dataPump = LNK_dataPump;
-_RTA_dispatcher = RTA_dispatcher;
-_LOG_system = LOG_system;
-_IDL_busyObj = IDL_busyObj;
-
-/* MODULE GBL */
-
-SECTIONS {
- .vers (COPY): {} /* version information */
-}
-
--priority
---trampolines
--llnkrtdx.a67
--ldrivers.a67 /* device drivers support */
--lsioboth.a67 /* supports both SIO models */
--lbiosC6000.a67 /* BIOS clock specific library */
--lbios6x1x.a67 /* BIOS c6x1x specific library */
--lbios.a67 /* DSP/BIOS support */
--lrtdx.lib /* RTDX support */
--lrts6700.lib /* C and C++ run-time library support */
-
-_GBL_CACHE = GBL_CACHE;
-
-/* MODULE MEM */
--stack 0x400
-MEMORY {
- SDRAM : origin = 0x80000000, len = 0x800000
- IRAM : origin = 0x0, len = 0x40000
-}
-/* MODULE CLK */
-SECTIONS {
- .clk: {
-
- CLK_F_gethtime = CLK_F_getshtime;
- *(.clk)
- } > IRAM, RUN_START(CLK_A_TABBEG)
-}
-_CLK_PRD = CLK_PRD;
-_CLK_COUNTSPMS = CLK_COUNTSPMS;
-_CLK_REGS = CLK_REGS;
-_CLK_USETIMER = CLK_USETIMER;
-_CLK_TIMERNUM = CLK_TIMERNUM;
-_CLK_TDDR = CLK_TDDR;
-
-/* MODULE PRD */
-SECTIONS {
- .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {
- } > IRAM
-}
-PRD_A_TABLEN = 0;
-
-/* MODULE RTDX */
-_RTDX_interrupt_mask = 0x0;
-
-/* MODULE HST */
-_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask;
-_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask;
-_LNK_readDone = LNK_readDone;
-_LNK_readFail = LNK_readFail;
-_LNK_readPend = LNK_readPend;
-_LNK_writeFail = LNK_writeFail;
-/* MODULE HWI */
-SECTIONS {
- .hwi_vec: 0x0 {
- HWI_A_VECS = .;
- *(.hwi_vec)
- }
-}
-
-_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;
-
-/* MODULE SWI */
-SECTIONS {
- .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {
- } > IRAM
-}
-SWI_A_TABLEN = 1;
-
-/* MODULE TSK */
-SECTIONS {
- .tsk: {
- *(.tsk)
- } > IRAM
-}
-
-/* MODULE IDL */
-SECTIONS {
- .idl: {
- *(.idl)
- } > IRAM, RUN_START(IDL_A_TABBEG)
-
- .idlcal: {
- *(.idlcal)
- } > IRAM, RUN_START(IDL_A_CALBEG)
-}
-
-
-LOG_A_TABLEN = 1; _LOG_A_TABLEN = 1;
-
-PIP_A_TABLEN = 2;
-
-
-SECTIONS {
- .bss: {} > IRAM
-
- .far: {} > IRAM
-
- .sysdata: {} > IRAM
-
- .dsm: {} > IRAM
-
- frt: {} > IRAM
-
- .mem: {} > IRAM
-
- .bios: {} > IRAM
-
- .cio: {} > IRAM
-
- .data: {} > IRAM
-
- .gio: {} > IRAM
-
- .pinit: {} > IRAM
-
- .sys: {} > IRAM
-
- .sysregs: {} > IRAM
-
- .text: {} > IRAM
-
- .cinit: {} > IRAM
-
- .switch: {} > IRAM
-
- .gblinit: {} > IRAM
-
- .sysinit: {} > IRAM
-
- .trcdata: {} > IRAM
-
- .hwi: {} > IRAM
-
- .rtdx_data: {} > IRAM
-
- .rtdx_text: {} > IRAM
-
- .TSK_idle$stk: {
- *(.TSK_idle$stk)
- } > IRAM
-
- /* LOG_system buffer */
- .LOG_system$buf: align = 0x100 {} > IRAM
-
- /* RTA_fromHost buffer */
- .hst1: align = 0x4 {} > IRAM
-
- /* RTA_toHost buffer */
- .hst0: align = 0x4 {} > IRAM
-
- GROUP {
- .const: align = 0x8 {}
- .printf (COPY): {}
- } > IRAM
-
- .args: align=4 fill=0 {
- *(.args)
- . += 0x4;
- } > IRAM
-
- .trace: fill = 0x0 align = 0x4 {
- _SYS_PUTCBEG = .;
- . += 0x200;
- _SYS_PUTCEND = . - 1;
- } > IRAM
-
- .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) {
- } > IRAM
-
- .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) {
- } > IRAM
-
- .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) {
- } > IRAM
-
- .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) {
- } > IRAM
-
- .stack: align = 0x8 {
- GBL_stackbeg = .;
- *(.stack)
- GBL_stackend = GBL_stackbeg + 0x400 - 1;
- _HWI_STKBOTTOM = GBL_stackbeg + 0x400 - 8;
- _HWI_STKTOP = GBL_stackbeg;
- } > IRAM
-
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0c1ece4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0c1ece4e50100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0c1ece4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0f44b11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0f44b11e10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/a0f44b11e10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/d0f6fe98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/d0f6fe98d80100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c6/d0f6fe98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/0061b7d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/0061b7d3e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/0061b7d3e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/5082e17a44070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/5082e17a44070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/5082e17a44070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/606e027add0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/606e027add0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/606e027add0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/b06fbcf041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/b06fbcf041070018153483e962c7925e
deleted file mode 100644
index f9fe735..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c7/b06fbcf041070018153483e962c7925e
+++ /dev/null
@@ -1,1758 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Feb 01 11:18:01 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000aa80
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000be97 00034169 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000024c0
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000380 intio.obj (.text)
- 000051e0 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 000054c0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005700 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 000058c0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a60 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005be0 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d60 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005ea0 00000120 : sinit.obj (.text:_call_dtors)
- 00005fc0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000060c0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000061c0 00000100 rts6700.lib : remi.obj (.text:__remi)
- 000062c0 00000100 : atexit.obj (.text:_atexit)
- 000063c0 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 000064a0 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006580 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006640 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 000066e0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006720 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006760 00000040 : divf.obj (.text:___isnanf)
- 000067a0 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000067c0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000067e0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00006800 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006820 00000020 : _lock.obj (.text:__register_lock)
- 00006840 00000020 : _lock.obj (.text:__register_unlock)
- 00006860 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006880 00001764
- 00006880 00000820 intio.obj (.cinit)
- 000070a0 00000564 dsp_bios_cfg.obj (.cinit)
- 00007604 00000004 --HOLE-- [fill = 0]
- 00007608 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007874 00000004 --HOLE-- [fill = 0]
- 00007878 000001a4 : knl.o67 (.cinit)
- 00007a1c 00000004 --HOLE-- [fill = 0]
- 00007a20 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 00007b4c 00000004 --HOLE-- [fill = 0]
- 00007b50 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007c00 00000070 : tsk.o67 (.cinit)
- 00007c70 00000060 : tsk_stup.o67 (.cinit)
- 00007cd0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007d2c 00000004 --HOLE-- [fill = 0]
- 00007d30 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007d84 00000004 --HOLE-- [fill = 0]
- 00007d88 0000004c bios.a67 : rta.o67 (.cinit)
- 00007dd4 00000004 --HOLE-- [fill = 0]
- 00007dd8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007e24 00000004 --HOLE-- [fill = 0]
- 00007e28 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007e5c 00000004 --HOLE-- [fill = 0]
- 00007e60 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007e90 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007ebc 00000004 --HOLE-- [fill = 0]
- 00007ec0 0000002c rts6700.lib : exit.obj (.cinit)
- 00007eec 00000004 --HOLE-- [fill = 0]
- 00007ef0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007f14 00000004 --HOLE-- [fill = 0]
- 00007f18 0000001c : sys.o67 (.cinit)
- 00007f34 00000004 --HOLE-- [fill = 0]
- 00007f38 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007f54 00000004 --HOLE-- [fill = 0]
- 00007f58 0000001c : atexit.obj (.cinit)
- 00007f74 00000004 --HOLE-- [fill = 0]
- 00007f78 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007f90 00000010 rts6700.lib : divf.obj (.cinit)
- 00007fa0 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007fac 00000004 --HOLE-- [fill = 0]
- 00007fb0 0000000c : idl_busy.o67 (.cinit)
- 00007fbc 00000004 --HOLE-- [fill = 0]
- 00007fc0 0000000c : knl_swit.o67 (.cinit)
- 00007fcc 00000004 --HOLE-- [fill = 0]
- 00007fd0 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007fdc 00000004 --HOLE-- [fill = 0]
- 00007fe0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007fe4 00000004
- 00007fe4 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007fe8 000014c8 UNINITIALIZED
- 00007fe8 00000fb8 intio.obj (.far)
- 00008fa0 00000188 rts6700.lib : atexit.obj (.far)
- 00009128 000000f4 csl6713.lib : csl_irq.obj (.far)
- 0000921c 000000d8 bios.a67 : knl.o67 (.far)
- 000092f4 0000005c : tsk.o67 (.far)
- 00009350 00000054 : obj_init.o67 (.far)
- 000093a4 00000050 : tsk_stup.o67 (.far)
- 000093f4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 0000942c 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009454 00000020 bios.a67 : sys.o67 (.far)
- 00009474 00000010 : knl_tick.o67 (.far)
- 00009484 0000000c : utl_putc.o67 (.far)
- 00009490 0000000c rts6700.lib : exit.obj (.far)
- 0000949c 00000008 : _lock.obj (.far)
- 000094a4 00000008 : divf.obj (.far)
- 000094ac 00000004 : sinit.obj (.far)
-
-.hst1 0 000094b0 00000010 UNINITIALIZED
- 000094b0 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 000094c0 00000ea0
- 000094c0 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 000098c0 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009c00 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009f00 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 0000a040 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 0000a120 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a1a0 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a200 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a260 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a2a0 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a2e0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a300 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a320 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a340 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a360 0000044c UNINITIALIZED
- 0000a360 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a770 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a790 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a7ac 00000010 UNINITIALIZED
- 0000a7ac 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a7c0 00000420
- 0000a7c0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000aa80 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000ab40 00000080 : tsk_init.o67 (.sysinit)
- 0000abc0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000abe0 00000400 UNINITIALIZED
- 0000abe0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000afe0 00000400 UNINITIALIZED
- 0000afe0 00000400 --HOLE--
-
-.bss 0 0000b3e0 00000342 UNINITIALIZED
- 0000b3e0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b4e0 000000cc : biosdata.o67 (.bss)
- 0000b5ac 0000009c : swi.o67 (.bss)
- 0000b648 00000048 : knl.o67 (.bss)
- 0000b690 00000018 : hwi.o67 (.bss)
- 0000b6a8 00000018 dsp_bios_cfg.obj (.bss)
- 0000b6c0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b6d8 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b6e8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b6f4 00000008 : clk_data.o67 (.bss)
- 0000b6fc 00000008 : sys.o67 (.bss)
- 0000b704 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b70c 00000008 intio.obj (.bss)
- 0000b714 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b718 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b71c 00000004 : idl_busy.o67 (.bss)
- 0000b720 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b724 00000200
- 0000b724 00000200 --HOLE-- [fill = 00000000]
-
-.pip 0 0000b924 000000c8 UNINITIALIZED
- 0000b924 000000c8 dsp_bios_cfg.obj (.pip)
-
-.idlcal 0 0000b9ec 00000010 UNINITIALIZED
- 0000b9ec 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.LOG_system$buf
-* 0 0000ba00 00000100 UNINITIALIZED
- 0000ba00 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000bb00 00000100 UNINITIALIZED
- 0000bb00 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000bc00 000000f9
- 0000bc00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000bc4e 00000002 --HOLE-- [fill = 0]
- 0000bc50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000bc90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bcb3 00000022 : utl_doer.o67 (.const)
- 0000bcd5 00000003 --HOLE-- [fill = 0]
- 0000bcd8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000bcf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000bcf9 0000003f COPY SECTION
- 0000bcf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.tsk 0 0000bcfc 00000060 UNINITIALIZED
- 0000bcfc 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bd5c 00000040
- 0000bd5c 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000bd9c 0000003c UNINITIALIZED
- 0000bd9c 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bdd8 00000030
- 0000bdd8 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000be08 0000002c UNINITIALIZED
- 0000be08 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000be34 00000028
- 0000be34 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000be5c 00000018
- 0000be5c 00000018 dsp_bios_cfg.obj (.log)
-
-.sys 0 0000be74 00000010 UNINITIALIZED
- 0000be74 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000be84 0000000c
- 0000be84 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000be88 00000004 : rtdx_mon.o62 (.pinit)
- 0000be8c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000be90 0000000c
- 0000be90 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000be9c 00000008 UNINITIALIZED
- 0000be9c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b3e0 $bss
-0000b3e0 .bss
-00000000 .data
-000043c0 .text
-0000a964 BIOS$$CLKOFF
-0000a924 BIOS$$CLKON
-0000a7c0 BIOS_init
-0000a9cc BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000be9c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b508 CLK_D_idletime
-0000b504 CLK_D_isrhook
-0000b500 CLK_D_tabbeg
-0000b4fc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b4f8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bea0 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a88 GBL_USERINITFXN
-00000001 GBL_boot
-0000be98 GBL_initdone
-0000afe0 GBL_stackbeg
-0000b3df GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bd9c HST_A_TABBEG
-0000bdd8 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b574 HST_D_chanmask
-0000b578 HST_D_tabbeg
-0000b57c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b6a0 HWI_D_bss
-0000b6a4 HWI_D_ccmask
-0000b690 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000b9ec IDL_A_CALBEG
-0000a7ac IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b71c IDL_D_busyObj
-0000b4e8 IDL_D_calbeg
-0000b4e4 IDL_D_calibrate
-0000b4e0 IDL_D_tabbeg
-0000a7b8 IDL_END
-0000b9f8 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bdfc IDL_busyObj
-0000bd33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bd2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bdf8 IDL_busyObj$stsobj
-0000bd30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a7ac IDL_cpuLoad
-0000b9ec IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000be08 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bddc KNL_swi$sts
-0000bd09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000bcf9 KNL_swi$sts$maxfmt
-0000bdd8 KNL_swi$sts$stsobj
-0000bd01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a7b0 LNK_dataPump
-0000b9f0 LNK_dataPump$
-0000b6c4 LNK_dspFrameReadyMask
-0000b6c0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b6cc LNK_readDone
-0000b6d0 LNK_readFail
-0000b6c8 LNK_readPend
-00000370 LNK_rrloop
-0000b6d4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000be5c LOG_A_TABBEG
-0000be74 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b4ec LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000be5c LOG_system
-0000ba00 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000b924 PIP_A_TABBEG
-0000b9ec PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b4f0 PIP_D_tabbeg
-0000b4f4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b530 PRD_D_cur
-0000b534 PRD_D_elapsed
-0000b538 PRD_D_prevtim
-0000b53c PRD_D_scalar
-0000b540 PRD_D_swihandle
-0000b544 PRD_D_tabbeg
-0000b548 PRD_D_tablen
-0000b54c PRD_D_thook
-0000b52c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000be9c PRD_clock
-00000001 QUE$
-0000b550 RTA_D_fromHost
-0000b558 RTA_D_logval
-0000b568 RTA_D_stsval
-0000b554 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a7b4 RTA_dispatcher
-0000b9f4 RTA_dispatcher$
-00001f28 RTA_execute
-0000bda0 RTA_fromHost
-000094b0 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000b924 RTA_fromHost$pipe
-0000b954 RTA_fromHost$pipe$aaa
-0000b984 RTA_fromHost$pipe$bbb
-0000b6a8 RTA_fromHost$pipe$dtab
-0000b928 RTA_fromHost$pipe$rd
-0000b958 RTA_fromHost$pipe$wr
-0000bda8 RTA_fromHost$rtdx
-0000bdbc RTA_toHost
-0000bb00 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000b988 RTA_toHost$pipe
-0000b9b8 RTA_toHost$pipe$aaa
-0000b9e8 RTA_toHost$pipe$bbb
-0000b6b4 RTA_toHost$pipe$dtab
-0000b98c RTA_toHost$pipe$rd
-0000b9bc RTA_toHost$pipe$wr
-0000bdc4 RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bdd8 STS_A_TABBEG
-0000be08 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000be08 SWI_A_TABBEG
-0000be34 SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b5c4 SWI_D_curfxn
-0000b5b4 SWI_D_curmask
-0000b5c0 SWI_D_curmbox
-0000b5b8 SWI_D_curset
-0000b5b0 SWI_D_execaddr
-0000b5cc SWI_D_inswi
-0000b5bc SWI_D_lock
-0000b5c8 SWI_D_rdybeg
-0000b5d0 SWI_D_rdytab
-0000b5ac SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000be74 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000be94 TRC_R_mask
-0000be90 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bd08 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000abe0 TSK_idle$stack
-0000af78 TSK_idle$stkptr
-0000bdec TSK_idle$sts
-0000bd23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bd13 TSK_idle$sts$maxfmt
-0000bde8 TSK_idle$sts$stsobj
-0000bd1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a7c0 _BIOS_init
-0000a9cc _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b6f4 _CLK_DFLTMICROSECS
-0000b528 _CLK_D_countspms
-0000b51c _CLK_D_dirty
-0000b6f8 _CLK_D_microseconds
-0000b520 _CLK_D_prd
-0000b524 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b50c _CLK_htimeDiv
-0000b510 _CLK_htimeMult
-0000b714 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b514 _CLK_ltimeDiv
-0000b518 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008f78 _Config
-0000b704 _DSK6713_AIC23_codeccontrolhandle
-0000b708 _DSK6713_AIC23_codecdatahandle
-00005ccc _DSK6713_AIC23_config
-000051e0 _DSK6713_AIC23_openCodec
-00005ca8 _DSK6713_AIC23_rget
-00005be0 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b720 _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b584 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b588 _GBL_freq
-00004320 _GBL_getVersion
-0000b580 _GBL_procId
-00005a88 _GBL_setPLLto225MHz
-0000bd9c _HST_A_TABBEG
-0000bdd8 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b69c _HWI_D_inhwi
-0000b690 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b3d8 _HWI_STKBOTTOM
-0000afe0 _HWI_STKTOP
-0000b690 _HWI_data
-00004020 _HWI_disable
-0000b3e0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b710 _H_Codec
-0000bdfc _IDL_busyObj
-0000a7ac _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-000066e0 _IRQ_enable
-000067a0 _IRQ_globalDisable
-000067c0 _IRQ_globalEnable
-00005700 _IRQ_map
-000067e0 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b650 _KNL_alarm
-00003440 _KNL_check
-0000b674 _KNL_curqueue
-0000b664 _KNL_curtask
-0000b66c _KNL_curtime
-000092bc _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b68c _KNL_idlefxn
-0000b658 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b678 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b668 _KNL_prevtask
-0000b65c _KNL_priority
-0000921c _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b660 _KNL_set
-0000b654 _KNL_setpri
-0000be08 _KNL_swi
-0000b670 _KNL_swiptr
-00002cec _KNL_switch
-0000b680 _KNL_tcreatefxn
-0000b684 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b688 _KNL_treadyfxn
-0000b67c _KNL_tswitchfxn
-0000b648 _KNL_wFlag
-0000b64c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a7b0 _LNK_dataPump
-0000b6c4 _LNK_dspFrameReadyMask
-0000b6c0 _LNK_dspFrameRequestMask
-0000b6cc _LNK_readDone
-0000b6d0 _LNK_readFail
-0000b6c8 _LNK_readPend
-0000b6d4 _LNK_writeFail
-0000be5c _LOG_A_TABBEG
-0000be74 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b4ec _LOG_D_system
-00003ea0 _LOG_event
-0000be5c _LOG_system
-00005fc0 _MCBSP_open
-000058c0 _MCBSP_reset
-000060c0 _MCBSP_start
-0000b58c _MEM_D_NUMSEGMENTS
-0000b594 _MEM_D_freelist
-0000b598 _MEM_D_lockaddr
-0000b590 _MEM_D_memtab
-0000b59c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000abc0 _OBJ_init
-00009388 _OBJ_segtab
-00009350 _OBJ_table
-0000b924 _PIP_A_TABBEG
-0000b9ec _PIP_A_TABEND
-0000b52c _PRD_D_tick
-0000be9c _PRD_clock
-0000a7b4 _RTA_dispatcher
-0000bda0 _RTA_fromHost
-0000bdbc _RTA_toHost
-0000a360 _RTDX_Buffer
-0000a76c _RTDX_Buffer_End
-0000a1a0 _RTDX_Buffer_Initialize
-0000a2e0 _RTDX_Buffer_Read
-0000a200 _RTDX_Buffer_ReadCB
-0000a260 _RTDX_Buffer_Size
-0000a768 _RTDX_Buffer_Start
-0000a300 _RTDX_Buffer_Write
-000098c0 _RTDX_Buffer_WriteCB
-0000a2a0 _RTDX_Final_RT_Monitor
-0000a120 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a340 _RTDX_Mask_IER
-00009f00 _RTDX_Mon_Queue
-000094c0 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a77c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bdd8 _STS_A_TABBEG
-0000be08 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b5c4 _SWI_D_curfxn
-0000b5b4 _SWI_D_curmask
-0000b5b8 _SWI_D_curset
-0000b5b0 _SWI_D_execaddr
-0000b5cc _SWI_D_inswi
-0000b5bc _SWI_D_lock
-0000b5c8 _SWI_D_rdybeg
-0000b5ac _SWI_D_runaddr
-0000b5ac _SWI_data
-00000e50 _SWI_post
-0000b5a0 _SYS
-0000b724 _SYS_PUTCBEG
-0000b923 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009454 _SYS_exitStack
-0000b6fc _SYS_exitStackPtr
-0000b700 _SYS_exitStackTop
-0000be94 _TRC_R_mask
-0000b6f0 _TSK
-000092f4 _TSK_ATTRS
-00009310 _TSK_config
-00002fa0 _TSK_exit
-0000bd08 _TSK_idle
-0000ab40 _TSK_init
-0000b6e8 _TSK_nTasks
-0000b6ec _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-00009330 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b5a8 __HOOK_NUMHOOKS
-0000b5a4 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009214 __IRQ_dispatchTable
-00009150 __IRQ_eventTable
-00006860 __IRQ_hookFetchPacket
-000091d4 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00009424 __MCBSP_hDev0
-00009428 __MCBSP_hDev1
-000093cc __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-000093a4 __TSK_mutex
-00009498 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006720 ___add_dtor
-00008fa0 ___atexit_func_id__
-ffffffff ___binit__
-0000b3e0 ___bss__
-ffffffff ___c_args__
-00006880 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b722 ___end__
-00006880 ___etext__
-0000be84 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009490 __cleanup_ptr
-000043c0 __divf
-00009494 __dtors_ptr
-000063c0 __frcmpyf_div
-0000949c __lock
-00006800 __nop
-00006820 __register_lock
-00006840 __register_unlock
-000061c0 __remi
-0000afe0 __stack
-00005d60 __strasgi
-000094a0 __unlock
-000062c0 _atexit
-00007fe8 _b
-000087b0 _buffer
-0000aa80 _c_int00
-00005ea0 _call_dtors
-000094ac _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-000054c0 _memcpy
-0000651c _mono_read_16Bit
-000064f4 _mono_write_16Bit
-000050a8 _non_circ_fir
-0000b70c _ptr
-0000b6e0 _rtdxNullChanCnt
-0000b6e4 _rtdxNullFuncCnt
-0000a770 _rtdx_buffer_state
-0000a790 _rtdx_mon_state
-000064c8 _stereo_read_16Bit
-000064a0 _stereo_write_16Bit
-00005a60 _wait500nS
-ffffffff binit
-00006880 cinit
-00000000 edata
-0000b722 end
-00006880 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000be84 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050a8 _non_circ_fir
-000051e0 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-000054c0 _memcpy
-00005700 _IRQ_map
-000058c0 _MCBSP_reset
-00005a60 _wait500nS
-00005a88 GBL_USERINITFXN
-00005a88 _GBL_setPLLto225MHz
-00005be0 _DSK6713_AIC23_rset
-00005ca8 _DSK6713_AIC23_rget
-00005ccc _DSK6713_AIC23_config
-00005d60 __strasgi
-00005ea0 _call_dtors
-00005fc0 _MCBSP_open
-000060c0 _MCBSP_start
-000061c0 __remi
-000062c0 _atexit
-000063c0 __frcmpyf_div
-000064a0 _stereo_write_16Bit
-000064c8 _stereo_read_16Bit
-000064f4 _mono_write_16Bit
-0000651c _mono_read_16Bit
-000066e0 _IRQ_enable
-00006720 ___add_dtor
-000067a0 _IRQ_globalDisable
-000067c0 _IRQ_globalEnable
-000067e0 _IRQ_nmiEnable
-00006800 __nop
-00006820 __register_lock
-00006840 __register_unlock
-00006860 __IRQ_hookFetchPacket
-00006880 ___cinit__
-00006880 ___etext__
-00006880 cinit
-00006880 etext
-00007fe8 _b
-000087b0 _buffer
-00008f78 _Config
-00008fa0 ___atexit_func_id__
-00009150 __IRQ_eventTable
-000091d4 __IRQ_intTable
-00009214 __IRQ_dispatchTable
-0000921c _KNL_queues
-000092bc _KNL_dummy
-000092f4 _TSK_ATTRS
-00009310 _TSK_config
-00009330 _TSK_timerSem
-00009350 _OBJ_table
-00009388 _OBJ_segtab
-000093a4 __TSK_mutex
-000093cc __MEM_mutex
-00009424 __MCBSP_hDev0
-00009428 __MCBSP_hDev1
-00009454 _SYS_exitStack
-00009490 __cleanup_ptr
-00009494 __dtors_ptr
-00009498 ___TI_enable_exit_profile_output
-0000949c __lock
-000094a0 __unlock
-000094ac _dtors
-000094b0 RTA_fromHost$buf
-000094c0 _RTDX_Poll
-000098c0 _RTDX_Buffer_WriteCB
-00009f00 _RTDX_Mon_Queue
-0000a120 _RTDX_Init_RT_Monitor
-0000a1a0 _RTDX_Buffer_Initialize
-0000a200 _RTDX_Buffer_ReadCB
-0000a260 _RTDX_Buffer_Size
-0000a2a0 _RTDX_Final_RT_Monitor
-0000a2e0 _RTDX_Buffer_Read
-0000a300 _RTDX_Buffer_Write
-0000a340 _RTDX_Mask_IER
-0000a360 _RTDX_Buffer
-0000a768 _RTDX_Buffer_Start
-0000a76c _RTDX_Buffer_End
-0000a770 _rtdx_buffer_state
-0000a77c _RTDX_writing
-0000a790 _rtdx_mon_state
-0000a7ac IDL_A_TABBEG
-0000a7ac IDL_cpuLoad
-0000a7ac _IDL_cpuLoad
-0000a7b0 LNK_dataPump
-0000a7b0 _LNK_dataPump
-0000a7b4 RTA_dispatcher
-0000a7b4 _RTA_dispatcher
-0000a7b8 IDL_END
-0000a7c0 BIOS_init
-0000a7c0 _BIOS_init
-0000a924 BIOS$$CLKON
-0000a964 BIOS$$CLKOFF
-0000a9cc BIOS_start
-0000a9cc _BIOS_start
-0000aa80 _c_int00
-0000ab40 _TSK_init
-0000abc0 _OBJ_init
-0000abe0 TSK_idle$stack
-0000af78 TSK_idle$stkptr
-0000afe0 GBL_stackbeg
-0000afe0 _HWI_STKTOP
-0000afe0 __stack
-0000b3d8 _HWI_STKBOTTOM
-0000b3df GBL_stackend
-0000b3e0 $bss
-0000b3e0 .bss
-0000b3e0 _HWI_dispatchTab
-0000b3e0 ___bss__
-0000b4e0 IDL_D_tabbeg
-0000b4e4 IDL_D_calibrate
-0000b4e8 IDL_D_calbeg
-0000b4ec LOG_D_system
-0000b4ec _LOG_D_system
-0000b4f0 PIP_D_tabbeg
-0000b4f4 PIP_D_tablen
-0000b4f8 CLK_R_time
-0000b4fc CLK_D_timefxn
-0000b500 CLK_D_tabbeg
-0000b504 CLK_D_isrhook
-0000b508 CLK_D_idletime
-0000b50c _CLK_htimeDiv
-0000b510 _CLK_htimeMult
-0000b514 _CLK_ltimeDiv
-0000b518 _CLK_ltimeMult
-0000b51c _CLK_D_dirty
-0000b520 _CLK_D_prd
-0000b524 _CLK_D_tddr
-0000b528 _CLK_D_countspms
-0000b52c PRD_D_tick
-0000b52c _PRD_D_tick
-0000b530 PRD_D_cur
-0000b534 PRD_D_elapsed
-0000b538 PRD_D_prevtim
-0000b53c PRD_D_scalar
-0000b540 PRD_D_swihandle
-0000b544 PRD_D_tabbeg
-0000b548 PRD_D_tablen
-0000b54c PRD_D_thook
-0000b550 RTA_D_fromHost
-0000b554 RTA_D_toHost
-0000b558 RTA_D_logval
-0000b568 RTA_D_stsval
-0000b574 HST_D_chanmask
-0000b578 HST_D_tabbeg
-0000b57c HST_D_tabend
-0000b580 _GBL_procId
-0000b584 _GBL_clkIn
-0000b588 _GBL_freq
-0000b58c _MEM_D_NUMSEGMENTS
-0000b590 _MEM_D_memtab
-0000b594 _MEM_D_freelist
-0000b598 _MEM_D_lockaddr
-0000b59c _MEM_D_unlockaddr
-0000b5a0 _SYS
-0000b5a4 __HOOK_knlId
-0000b5a8 __HOOK_NUMHOOKS
-0000b5ac SWI_D_runaddr
-0000b5ac _SWI_D_runaddr
-0000b5ac _SWI_data
-0000b5b0 SWI_D_execaddr
-0000b5b0 _SWI_D_execaddr
-0000b5b4 SWI_D_curmask
-0000b5b4 _SWI_D_curmask
-0000b5b8 SWI_D_curset
-0000b5b8 _SWI_D_curset
-0000b5bc SWI_D_lock
-0000b5bc _SWI_D_lock
-0000b5c0 SWI_D_curmbox
-0000b5c4 SWI_D_curfxn
-0000b5c4 _SWI_D_curfxn
-0000b5c8 SWI_D_rdybeg
-0000b5c8 _SWI_D_rdybeg
-0000b5cc SWI_D_inswi
-0000b5cc _SWI_D_inswi
-0000b5d0 SWI_D_rdytab
-0000b648 _KNL_wFlag
-0000b64c _KNL_wList
-0000b650 _KNL_alarm
-0000b654 _KNL_setpri
-0000b658 _KNL_inactive
-0000b65c _KNL_priority
-0000b660 _KNL_set
-0000b664 _KNL_curtask
-0000b668 _KNL_prevtask
-0000b66c _KNL_curtime
-0000b670 _KNL_swiptr
-0000b674 _KNL_curqueue
-0000b678 _KNL_maxqueue
-0000b67c _KNL_tswitchfxn
-0000b680 _KNL_tcreatefxn
-0000b684 _KNL_tdeletefxn
-0000b688 _KNL_treadyfxn
-0000b68c _KNL_idlefxn
-0000b690 HWI_D_spsave
-0000b690 _HWI_D_spsave
-0000b690 _HWI_data
-0000b69c _HWI_D_inhwi
-0000b6a0 HWI_D_bss
-0000b6a4 HWI_D_ccmask
-0000b6a8 RTA_fromHost$pipe$dtab
-0000b6b4 RTA_toHost$pipe$dtab
-0000b6c0 LNK_dspFrameRequestMask
-0000b6c0 _LNK_dspFrameRequestMask
-0000b6c4 LNK_dspFrameReadyMask
-0000b6c4 _LNK_dspFrameReadyMask
-0000b6c8 LNK_readPend
-0000b6c8 _LNK_readPend
-0000b6cc LNK_readDone
-0000b6cc _LNK_readDone
-0000b6d0 LNK_readFail
-0000b6d0 _LNK_readFail
-0000b6d4 LNK_writeFail
-0000b6d4 _LNK_writeFail
-0000b6e0 _rtdxNullChanCnt
-0000b6e4 _rtdxNullFuncCnt
-0000b6e8 _TSK_nTasks
-0000b6ec _TSK_pid
-0000b6f0 _TSK
-0000b6f4 _CLK_DFLTMICROSECS
-0000b6f8 _CLK_D_microseconds
-0000b6fc _SYS_exitStackPtr
-0000b700 _SYS_exitStackTop
-0000b704 _DSK6713_AIC23_codeccontrolhandle
-0000b708 _DSK6713_AIC23_codecdatahandle
-0000b70c _ptr
-0000b710 _H_Codec
-0000b714 _CLK_htimePerLtime
-0000b71c IDL_D_busyObj
-0000b720 _DSK6713_version
-0000b722 ___end__
-0000b722 end
-0000b724 _SYS_PUTCBEG
-0000b923 _SYS_PUTCEND
-0000b924 PIP_A_TABBEG
-0000b924 RTA_fromHost$pipe
-0000b924 _PIP_A_TABBEG
-0000b928 RTA_fromHost$pipe$rd
-0000b954 RTA_fromHost$pipe$aaa
-0000b958 RTA_fromHost$pipe$wr
-0000b984 RTA_fromHost$pipe$bbb
-0000b988 RTA_toHost$pipe
-0000b98c RTA_toHost$pipe$rd
-0000b9b8 RTA_toHost$pipe$aaa
-0000b9bc RTA_toHost$pipe$wr
-0000b9e8 RTA_toHost$pipe$bbb
-0000b9ec IDL_A_CALBEG
-0000b9ec IDL_cpuLoad$
-0000b9ec PIP_A_TABEND
-0000b9ec _PIP_A_TABEND
-0000b9f0 LNK_dataPump$
-0000b9f4 RTA_dispatcher$
-0000b9f8 IDL_END$
-0000ba00 LOG_system$buf
-0000bb00 RTA_toHost$buf
-0000bcf9 KNL_swi$sts$maxfmt
-0000bd01 KNL_swi$sts$sumfmt
-0000bd08 TSK_idle
-0000bd08 _TSK_idle
-0000bd09 KNL_swi$sts$avgfmt
-0000bd13 TSK_idle$sts$maxfmt
-0000bd1b TSK_idle$sts$sumfmt
-0000bd23 TSK_idle$sts$avgfmt
-0000bd2d IDL_busyObj$maxfmt
-0000bd30 IDL_busyObj$sumfmt
-0000bd33 IDL_busyObj$avgfmt
-0000bd9c HST_A_TABBEG
-0000bd9c _HST_A_TABBEG
-0000bda0 RTA_fromHost
-0000bda0 _RTA_fromHost
-0000bda8 RTA_fromHost$rtdx
-0000bdbc RTA_toHost
-0000bdbc _RTA_toHost
-0000bdc4 RTA_toHost$rtdx
-0000bdd8 HST_A_TABEND
-0000bdd8 KNL_swi$sts$stsobj
-0000bdd8 STS_A_TABBEG
-0000bdd8 _HST_A_TABEND
-0000bdd8 _STS_A_TABBEG
-0000bddc KNL_swi$sts
-0000bde8 TSK_idle$sts$stsobj
-0000bdec TSK_idle$sts
-0000bdf8 IDL_busyObj$stsobj
-0000bdfc IDL_busyObj
-0000bdfc _IDL_busyObj
-0000be08 KNL_swi
-0000be08 STS_A_TABEND
-0000be08 SWI_A_TABBEG
-0000be08 _KNL_swi
-0000be08 _STS_A_TABEND
-0000be34 SWI_A_TABEND
-0000be5c LOG_A_TABBEG
-0000be5c LOG_system
-0000be5c _LOG_A_TABBEG
-0000be5c _LOG_system
-0000be74 LOG_A_TABEND
-0000be74 SYS$config
-0000be74 _LOG_A_TABEND
-0000be84 ___pinit__
-0000be84 pinit
-0000be90 TRC_cinit
-0000be94 TRC_R_mask
-0000be94 _TRC_R_mask
-0000be98 GBL_initdone
-0000be9c CLK_A_TABBEG
-0000be9c PRD_clock
-0000be9c _PRD_clock
-0000bea0 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[719 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0f4038f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0f4038f41070018153483e962c7925e
deleted file mode 100644
index 2df25c4..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c8/f0f4038f41070018153483e962c7925e
+++ /dev/null
@@ -1,1755 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Feb 01 11:00:22 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a920
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd37 000342c9 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002360
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000320 intio.obj (.text)
- 00005180 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005460 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056a0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005860 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a00 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005b80 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d00 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e40 00000120 : sinit.obj (.text:_call_dtors)
- 00005f60 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006060 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006160 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00006260 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006340 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006420 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 000064e0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006580 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 000065c0 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006600 00000040 : divf.obj (.text:___isnanf)
- 00006640 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006660 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006680 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066a0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 000066c0 00000020 : _lock.obj (.text:__register_lock)
- 000066e0 00000020 : _lock.obj (.text:__register_unlock)
- 00006700 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006720 00001764
- 00006720 00000820 intio.obj (.cinit)
- 00006f40 00000564 dsp_bios_cfg.obj (.cinit)
- 000074a4 00000004 --HOLE-- [fill = 0]
- 000074a8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007714 00000004 --HOLE-- [fill = 0]
- 00007718 000001a4 : knl.o67 (.cinit)
- 000078bc 00000004 --HOLE-- [fill = 0]
- 000078c0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 000079ec 00000004 --HOLE-- [fill = 0]
- 000079f0 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007aa0 00000070 : tsk.o67 (.cinit)
- 00007b10 00000060 : tsk_stup.o67 (.cinit)
- 00007b70 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bcc 00000004 --HOLE-- [fill = 0]
- 00007bd0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c24 00000004 --HOLE-- [fill = 0]
- 00007c28 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c74 00000004 --HOLE-- [fill = 0]
- 00007c78 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cc4 00000004 --HOLE-- [fill = 0]
- 00007cc8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007cfc 00000004 --HOLE-- [fill = 0]
- 00007d00 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d30 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d5c 00000004 --HOLE-- [fill = 0]
- 00007d60 0000002c rts6700.lib : exit.obj (.cinit)
- 00007d8c 00000004 --HOLE-- [fill = 0]
- 00007d90 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007db4 00000004 --HOLE-- [fill = 0]
- 00007db8 0000001c : sys.o67 (.cinit)
- 00007dd4 00000004 --HOLE-- [fill = 0]
- 00007dd8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007df4 00000004 --HOLE-- [fill = 0]
- 00007df8 0000001c : atexit.obj (.cinit)
- 00007e14 00000004 --HOLE-- [fill = 0]
- 00007e18 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e30 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e40 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e4c 00000004 --HOLE-- [fill = 0]
- 00007e50 0000000c : idl_busy.o67 (.cinit)
- 00007e5c 00000004 --HOLE-- [fill = 0]
- 00007e60 0000000c : knl_swit.o67 (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e7c 00000004 --HOLE-- [fill = 0]
- 00007e80 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007e84 00000004
- 00007e84 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007e88 000014c8 UNINITIALIZED
- 00007e88 00000fb8 intio.obj (.far)
- 00008e40 00000188 rts6700.lib : atexit.obj (.far)
- 00008fc8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090bc 000000d8 bios.a67 : knl.o67 (.far)
- 00009194 0000005c : tsk.o67 (.far)
- 000091f0 00000054 : obj_init.o67 (.far)
- 00009244 00000050 : tsk_stup.o67 (.far)
- 00009294 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092cc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 000092f4 00000020 bios.a67 : sys.o67 (.far)
- 00009314 00000010 : knl_tick.o67 (.far)
- 00009324 0000000c : utl_putc.o67 (.far)
- 00009330 0000000c rts6700.lib : exit.obj (.far)
- 0000933c 00000008 : _lock.obj (.far)
- 00009344 00000008 : divf.obj (.far)
- 0000934c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009350 00000010 UNINITIALIZED
- 00009350 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009360 00000ea0
- 00009360 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009760 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009aa0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009da0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009ee0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fc0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a040 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a0a0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a100 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a140 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a180 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a1a0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1c0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a1e0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a200 0000044c UNINITIALIZED
- 0000a200 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a610 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a630 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a64c 00000010 UNINITIALIZED
- 0000a64c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a660 00000420
- 0000a660 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a920 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a9e0 00000080 : tsk_init.o67 (.sysinit)
- 0000aa60 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aa80 00000400 UNINITIALIZED
- 0000aa80 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000ae80 00000400 UNINITIALIZED
- 0000ae80 00000400 --HOLE--
-
-.bss 0 0000b280 00000342 UNINITIALIZED
- 0000b280 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b380 000000cc : biosdata.o67 (.bss)
- 0000b44c 0000009c : swi.o67 (.bss)
- 0000b4e8 00000048 : knl.o67 (.bss)
- 0000b530 00000018 : hwi.o67 (.bss)
- 0000b548 00000018 dsp_bios_cfg.obj (.bss)
- 0000b560 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b578 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b588 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b594 00000008 : clk_data.o67 (.bss)
- 0000b59c 00000008 : sys.o67 (.bss)
- 0000b5a4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b5ac 00000008 intio.obj (.bss)
- 0000b5b4 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b5b8 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b5bc 00000004 : idl_busy.o67 (.bss)
- 0000b5c0 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5c4 00000200
- 0000b5c4 00000200 --HOLE-- [fill = 00000000]
-
-.hst 0 0000b7c4 0000003c UNINITIALIZED
- 0000b7c4 0000003c dsp_bios_cfg.obj (.hst)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bc24 00000040
- 0000bc24 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.sts 0 0000bc64 00000030
- 0000bc64 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bc94 0000002c UNINITIALIZED
- 0000bc94 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcc0 00000028
- 0000bcc0 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000bce8 00000018
- 0000bce8 00000018 dsp_bios_cfg.obj (.log)
-
-.idlcal 0 0000bd00 00000010 UNINITIALIZED
- 0000bd00 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd10 00000010 UNINITIALIZED
- 0000bd10 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd20 0000000c
- 0000bd20 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd24 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd28 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd2c 0000000c
- 0000bd2c 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd38 00000008 UNINITIALIZED
- 0000bd38 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b280 $bss
-0000b280 .bss
-00000000 .data
-000043c0 .text
-0000a804 BIOS$$CLKOFF
-0000a7c4 BIOS$$CLKON
-0000a660 BIOS_init
-0000a86c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd38 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b3a8 CLK_D_idletime
-0000b3a4 CLK_D_isrhook
-0000b3a0 CLK_D_tabbeg
-0000b39c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b398 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd3c CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a28 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd34 GBL_initdone
-0000ae80 GBL_stackbeg
-0000b27f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000b7c4 HST_A_TABBEG
-0000b800 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b414 HST_D_chanmask
-0000b418 HST_D_tabbeg
-0000b41c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b540 HWI_D_bss
-0000b544 HWI_D_ccmask
-0000b530 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd00 IDL_A_CALBEG
-0000a64c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b5bc IDL_D_busyObj
-0000b388 IDL_D_calbeg
-0000b384 IDL_D_calibrate
-0000b380 IDL_D_tabbeg
-0000a658 IDL_END
-0000bd0c IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bc88 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bc84 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a64c IDL_cpuLoad
-0000bd00 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bc94 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bc68 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bc64 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a650 LNK_dataPump
-0000bd04 LNK_dataPump$
-0000b564 LNK_dspFrameReadyMask
-0000b560 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b56c LNK_readDone
-0000b570 LNK_readFail
-0000b568 LNK_readPend
-00000370 LNK_rrloop
-0000b574 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bce8 LOG_A_TABBEG
-0000bd00 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b38c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bce8 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b390 PIP_D_tabbeg
-0000b394 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3d0 PRD_D_cur
-0000b3d4 PRD_D_elapsed
-0000b3d8 PRD_D_prevtim
-0000b3dc PRD_D_scalar
-0000b3e0 PRD_D_swihandle
-0000b3e4 PRD_D_tabbeg
-0000b3e8 PRD_D_tablen
-0000b3ec PRD_D_thook
-0000b3cc PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd38 PRD_clock
-00000001 QUE$
-0000b3f0 RTA_D_fromHost
-0000b3f8 RTA_D_logval
-0000b408 RTA_D_stsval
-0000b3f4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a654 RTA_dispatcher
-0000bd08 RTA_dispatcher$
-00001f28 RTA_execute
-0000b7c8 RTA_fromHost
-00009350 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b548 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000b7d0 RTA_fromHost$rtdx
-0000b7e4 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b554 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000b7ec RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bc64 STS_A_TABBEG
-0000bc94 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bc94 SWI_A_TABBEG
-0000bcc0 SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b464 SWI_D_curfxn
-0000b454 SWI_D_curmask
-0000b460 SWI_D_curmbox
-0000b458 SWI_D_curset
-0000b450 SWI_D_execaddr
-0000b46c SWI_D_inswi
-0000b45c SWI_D_lock
-0000b468 SWI_D_rdybeg
-0000b470 SWI_D_rdytab
-0000b44c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd10 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd30 TRC_R_mask
-0000bd2c TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aa80 TSK_idle$stack
-0000ae18 TSK_idle$stkptr
-0000bc78 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bc74 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a660 _BIOS_init
-0000a86c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b594 _CLK_DFLTMICROSECS
-0000b3c8 _CLK_D_countspms
-0000b3bc _CLK_D_dirty
-0000b598 _CLK_D_microseconds
-0000b3c0 _CLK_D_prd
-0000b3c4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b3ac _CLK_htimeDiv
-0000b3b0 _CLK_htimeMult
-0000b5b4 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b3b4 _CLK_ltimeDiv
-0000b3b8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e18 _Config
-0000b5a4 _DSK6713_AIC23_codeccontrolhandle
-0000b5a8 _DSK6713_AIC23_codecdatahandle
-00005c6c _DSK6713_AIC23_config
-00005180 _DSK6713_AIC23_openCodec
-00005c48 _DSK6713_AIC23_rget
-00005b80 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5c0 _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b424 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b428 _GBL_freq
-00004320 _GBL_getVersion
-0000b420 _GBL_procId
-00005a28 _GBL_setPLLto225MHz
-0000b7c4 _HST_A_TABBEG
-0000b800 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b53c _HWI_D_inhwi
-0000b530 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b278 _HWI_STKBOTTOM
-0000ae80 _HWI_STKTOP
-0000b530 _HWI_data
-00004020 _HWI_disable
-0000b280 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5b0 _H_Codec
-0000bc88 _IDL_busyObj
-0000a64c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006580 _IRQ_enable
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-000056a0 _IRQ_map
-00006680 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b4f0 _KNL_alarm
-00003440 _KNL_check
-0000b514 _KNL_curqueue
-0000b504 _KNL_curtask
-0000b50c _KNL_curtime
-0000915c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b52c _KNL_idlefxn
-0000b4f8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b518 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b508 _KNL_prevtask
-0000b4fc _KNL_priority
-000090bc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b500 _KNL_set
-0000b4f4 _KNL_setpri
-0000bc94 _KNL_swi
-0000b510 _KNL_swiptr
-00002cec _KNL_switch
-0000b520 _KNL_tcreatefxn
-0000b524 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b528 _KNL_treadyfxn
-0000b51c _KNL_tswitchfxn
-0000b4e8 _KNL_wFlag
-0000b4ec _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a650 _LNK_dataPump
-0000b564 _LNK_dspFrameReadyMask
-0000b560 _LNK_dspFrameRequestMask
-0000b56c _LNK_readDone
-0000b570 _LNK_readFail
-0000b568 _LNK_readPend
-0000b574 _LNK_writeFail
-0000bce8 _LOG_A_TABBEG
-0000bd00 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b38c _LOG_D_system
-00003ea0 _LOG_event
-0000bce8 _LOG_system
-00005f60 _MCBSP_open
-00005860 _MCBSP_reset
-00006060 _MCBSP_start
-0000b42c _MEM_D_NUMSEGMENTS
-0000b434 _MEM_D_freelist
-0000b438 _MEM_D_lockaddr
-0000b430 _MEM_D_memtab
-0000b43c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa60 _OBJ_init
-00009228 _OBJ_segtab
-000091f0 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3cc _PRD_D_tick
-0000bd38 _PRD_clock
-0000a654 _RTA_dispatcher
-0000b7c8 _RTA_fromHost
-0000b7e4 _RTA_toHost
-0000a200 _RTDX_Buffer
-0000a60c _RTDX_Buffer_End
-0000a040 _RTDX_Buffer_Initialize
-0000a180 _RTDX_Buffer_Read
-0000a0a0 _RTDX_Buffer_ReadCB
-0000a100 _RTDX_Buffer_Size
-0000a608 _RTDX_Buffer_Start
-0000a1a0 _RTDX_Buffer_Write
-00009760 _RTDX_Buffer_WriteCB
-0000a140 _RTDX_Final_RT_Monitor
-00009fc0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a1e0 _RTDX_Mask_IER
-00009da0 _RTDX_Mon_Queue
-00009360 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a61c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bc64 _STS_A_TABBEG
-0000bc94 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b464 _SWI_D_curfxn
-0000b454 _SWI_D_curmask
-0000b458 _SWI_D_curset
-0000b450 _SWI_D_execaddr
-0000b46c _SWI_D_inswi
-0000b45c _SWI_D_lock
-0000b468 _SWI_D_rdybeg
-0000b44c _SWI_D_runaddr
-0000b44c _SWI_data
-00000e50 _SWI_post
-0000b440 _SYS
-0000b5c4 _SYS_PUTCBEG
-0000b7c3 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-000092f4 _SYS_exitStack
-0000b59c _SYS_exitStackPtr
-0000b5a0 _SYS_exitStackTop
-0000bd30 _TRC_R_mask
-0000b590 _TSK
-00009194 _TSK_ATTRS
-000091b0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000a9e0 _TSK_init
-0000b588 _TSK_nTasks
-0000b58c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091d0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b448 __HOOK_NUMHOOKS
-0000b444 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090b4 __IRQ_dispatchTable
-00008ff0 __IRQ_eventTable
-00006700 __IRQ_hookFetchPacket
-00009074 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092c4 __MCBSP_hDev0
-000092c8 __MCBSP_hDev1
-0000926c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009244 __TSK_mutex
-00009338 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-000065c0 ___add_dtor
-00008e40 ___atexit_func_id__
-ffffffff ___binit__
-0000b280 ___bss__
-ffffffff ___c_args__
-00006720 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5c2 ___end__
-00006720 ___etext__
-0000bd20 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009330 __cleanup_ptr
-000043c0 __divf
-00009334 __dtors_ptr
-00006260 __frcmpyf_div
-0000933c __lock
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-0000ae80 __stack
-00005d00 __strasgi
-00009340 __unlock
-00006160 _atexit
-00007e88 _b
-00008650 _buffer
-0000a920 _c_int00
-00005e40 _call_dtors
-0000934c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-00005460 _memcpy
-000063bc _mono_read_16Bit
-00006394 _mono_write_16Bit
-000050a8 _non_circ_fir
-0000b5ac _ptr
-0000b580 _rtdxNullChanCnt
-0000b584 _rtdxNullFuncCnt
-0000a610 _rtdx_buffer_state
-0000a630 _rtdx_mon_state
-00006368 _stereo_read_16Bit
-00006340 _stereo_write_16Bit
-00005a00 _wait500nS
-ffffffff binit
-00006720 cinit
-00000000 edata
-0000b5c2 end
-00006720 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd20 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050a8 _non_circ_fir
-00005180 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-00005460 _memcpy
-000056a0 _IRQ_map
-00005860 _MCBSP_reset
-00005a00 _wait500nS
-00005a28 GBL_USERINITFXN
-00005a28 _GBL_setPLLto225MHz
-00005b80 _DSK6713_AIC23_rset
-00005c48 _DSK6713_AIC23_rget
-00005c6c _DSK6713_AIC23_config
-00005d00 __strasgi
-00005e40 _call_dtors
-00005f60 _MCBSP_open
-00006060 _MCBSP_start
-00006160 _atexit
-00006260 __frcmpyf_div
-00006340 _stereo_write_16Bit
-00006368 _stereo_read_16Bit
-00006394 _mono_write_16Bit
-000063bc _mono_read_16Bit
-00006580 _IRQ_enable
-000065c0 ___add_dtor
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-00006680 _IRQ_nmiEnable
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-00006700 __IRQ_hookFetchPacket
-00006720 ___cinit__
-00006720 ___etext__
-00006720 cinit
-00006720 etext
-00007e88 _b
-00008650 _buffer
-00008e18 _Config
-00008e40 ___atexit_func_id__
-00008ff0 __IRQ_eventTable
-00009074 __IRQ_intTable
-000090b4 __IRQ_dispatchTable
-000090bc _KNL_queues
-0000915c _KNL_dummy
-00009194 _TSK_ATTRS
-000091b0 _TSK_config
-000091d0 _TSK_timerSem
-000091f0 _OBJ_table
-00009228 _OBJ_segtab
-00009244 __TSK_mutex
-0000926c __MEM_mutex
-000092c4 __MCBSP_hDev0
-000092c8 __MCBSP_hDev1
-000092f4 _SYS_exitStack
-00009330 __cleanup_ptr
-00009334 __dtors_ptr
-00009338 ___TI_enable_exit_profile_output
-0000933c __lock
-00009340 __unlock
-0000934c _dtors
-00009350 RTA_fromHost$buf
-00009360 _RTDX_Poll
-00009760 _RTDX_Buffer_WriteCB
-00009da0 _RTDX_Mon_Queue
-00009fc0 _RTDX_Init_RT_Monitor
-0000a040 _RTDX_Buffer_Initialize
-0000a0a0 _RTDX_Buffer_ReadCB
-0000a100 _RTDX_Buffer_Size
-0000a140 _RTDX_Final_RT_Monitor
-0000a180 _RTDX_Buffer_Read
-0000a1a0 _RTDX_Buffer_Write
-0000a1e0 _RTDX_Mask_IER
-0000a200 _RTDX_Buffer
-0000a608 _RTDX_Buffer_Start
-0000a60c _RTDX_Buffer_End
-0000a610 _rtdx_buffer_state
-0000a61c _RTDX_writing
-0000a630 _rtdx_mon_state
-0000a64c IDL_A_TABBEG
-0000a64c IDL_cpuLoad
-0000a64c _IDL_cpuLoad
-0000a650 LNK_dataPump
-0000a650 _LNK_dataPump
-0000a654 RTA_dispatcher
-0000a654 _RTA_dispatcher
-0000a658 IDL_END
-0000a660 BIOS_init
-0000a660 _BIOS_init
-0000a7c4 BIOS$$CLKON
-0000a804 BIOS$$CLKOFF
-0000a86c BIOS_start
-0000a86c _BIOS_start
-0000a920 _c_int00
-0000a9e0 _TSK_init
-0000aa60 _OBJ_init
-0000aa80 TSK_idle$stack
-0000ae18 TSK_idle$stkptr
-0000ae80 GBL_stackbeg
-0000ae80 _HWI_STKTOP
-0000ae80 __stack
-0000b278 _HWI_STKBOTTOM
-0000b27f GBL_stackend
-0000b280 $bss
-0000b280 .bss
-0000b280 _HWI_dispatchTab
-0000b280 ___bss__
-0000b380 IDL_D_tabbeg
-0000b384 IDL_D_calibrate
-0000b388 IDL_D_calbeg
-0000b38c LOG_D_system
-0000b38c _LOG_D_system
-0000b390 PIP_D_tabbeg
-0000b394 PIP_D_tablen
-0000b398 CLK_R_time
-0000b39c CLK_D_timefxn
-0000b3a0 CLK_D_tabbeg
-0000b3a4 CLK_D_isrhook
-0000b3a8 CLK_D_idletime
-0000b3ac _CLK_htimeDiv
-0000b3b0 _CLK_htimeMult
-0000b3b4 _CLK_ltimeDiv
-0000b3b8 _CLK_ltimeMult
-0000b3bc _CLK_D_dirty
-0000b3c0 _CLK_D_prd
-0000b3c4 _CLK_D_tddr
-0000b3c8 _CLK_D_countspms
-0000b3cc PRD_D_tick
-0000b3cc _PRD_D_tick
-0000b3d0 PRD_D_cur
-0000b3d4 PRD_D_elapsed
-0000b3d8 PRD_D_prevtim
-0000b3dc PRD_D_scalar
-0000b3e0 PRD_D_swihandle
-0000b3e4 PRD_D_tabbeg
-0000b3e8 PRD_D_tablen
-0000b3ec PRD_D_thook
-0000b3f0 RTA_D_fromHost
-0000b3f4 RTA_D_toHost
-0000b3f8 RTA_D_logval
-0000b408 RTA_D_stsval
-0000b414 HST_D_chanmask
-0000b418 HST_D_tabbeg
-0000b41c HST_D_tabend
-0000b420 _GBL_procId
-0000b424 _GBL_clkIn
-0000b428 _GBL_freq
-0000b42c _MEM_D_NUMSEGMENTS
-0000b430 _MEM_D_memtab
-0000b434 _MEM_D_freelist
-0000b438 _MEM_D_lockaddr
-0000b43c _MEM_D_unlockaddr
-0000b440 _SYS
-0000b444 __HOOK_knlId
-0000b448 __HOOK_NUMHOOKS
-0000b44c SWI_D_runaddr
-0000b44c _SWI_D_runaddr
-0000b44c _SWI_data
-0000b450 SWI_D_execaddr
-0000b450 _SWI_D_execaddr
-0000b454 SWI_D_curmask
-0000b454 _SWI_D_curmask
-0000b458 SWI_D_curset
-0000b458 _SWI_D_curset
-0000b45c SWI_D_lock
-0000b45c _SWI_D_lock
-0000b460 SWI_D_curmbox
-0000b464 SWI_D_curfxn
-0000b464 _SWI_D_curfxn
-0000b468 SWI_D_rdybeg
-0000b468 _SWI_D_rdybeg
-0000b46c SWI_D_inswi
-0000b46c _SWI_D_inswi
-0000b470 SWI_D_rdytab
-0000b4e8 _KNL_wFlag
-0000b4ec _KNL_wList
-0000b4f0 _KNL_alarm
-0000b4f4 _KNL_setpri
-0000b4f8 _KNL_inactive
-0000b4fc _KNL_priority
-0000b500 _KNL_set
-0000b504 _KNL_curtask
-0000b508 _KNL_prevtask
-0000b50c _KNL_curtime
-0000b510 _KNL_swiptr
-0000b514 _KNL_curqueue
-0000b518 _KNL_maxqueue
-0000b51c _KNL_tswitchfxn
-0000b520 _KNL_tcreatefxn
-0000b524 _KNL_tdeletefxn
-0000b528 _KNL_treadyfxn
-0000b52c _KNL_idlefxn
-0000b530 HWI_D_spsave
-0000b530 _HWI_D_spsave
-0000b530 _HWI_data
-0000b53c _HWI_D_inhwi
-0000b540 HWI_D_bss
-0000b544 HWI_D_ccmask
-0000b548 RTA_fromHost$pipe$dtab
-0000b554 RTA_toHost$pipe$dtab
-0000b560 LNK_dspFrameRequestMask
-0000b560 _LNK_dspFrameRequestMask
-0000b564 LNK_dspFrameReadyMask
-0000b564 _LNK_dspFrameReadyMask
-0000b568 LNK_readPend
-0000b568 _LNK_readPend
-0000b56c LNK_readDone
-0000b56c _LNK_readDone
-0000b570 LNK_readFail
-0000b570 _LNK_readFail
-0000b574 LNK_writeFail
-0000b574 _LNK_writeFail
-0000b580 _rtdxNullChanCnt
-0000b584 _rtdxNullFuncCnt
-0000b588 _TSK_nTasks
-0000b58c _TSK_pid
-0000b590 _TSK
-0000b594 _CLK_DFLTMICROSECS
-0000b598 _CLK_D_microseconds
-0000b59c _SYS_exitStackPtr
-0000b5a0 _SYS_exitStackTop
-0000b5a4 _DSK6713_AIC23_codeccontrolhandle
-0000b5a8 _DSK6713_AIC23_codecdatahandle
-0000b5ac _ptr
-0000b5b0 _H_Codec
-0000b5b4 _CLK_htimePerLtime
-0000b5bc IDL_D_busyObj
-0000b5c0 _DSK6713_version
-0000b5c2 ___end__
-0000b5c2 end
-0000b5c4 _SYS_PUTCBEG
-0000b7c3 _SYS_PUTCEND
-0000b7c4 HST_A_TABBEG
-0000b7c4 _HST_A_TABBEG
-0000b7c8 RTA_fromHost
-0000b7c8 _RTA_fromHost
-0000b7d0 RTA_fromHost$rtdx
-0000b7e4 RTA_toHost
-0000b7e4 _RTA_toHost
-0000b7ec RTA_toHost$rtdx
-0000b800 HST_A_TABEND
-0000b800 LOG_system$buf
-0000b800 _HST_A_TABEND
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc64 KNL_swi$sts$stsobj
-0000bc64 STS_A_TABBEG
-0000bc64 _STS_A_TABBEG
-0000bc68 KNL_swi$sts
-0000bc74 TSK_idle$sts$stsobj
-0000bc78 TSK_idle$sts
-0000bc84 IDL_busyObj$stsobj
-0000bc88 IDL_busyObj
-0000bc88 _IDL_busyObj
-0000bc94 KNL_swi
-0000bc94 STS_A_TABEND
-0000bc94 SWI_A_TABBEG
-0000bc94 _KNL_swi
-0000bc94 _STS_A_TABEND
-0000bcc0 SWI_A_TABEND
-0000bce8 LOG_A_TABBEG
-0000bce8 LOG_system
-0000bce8 _LOG_A_TABBEG
-0000bce8 _LOG_system
-0000bd00 IDL_A_CALBEG
-0000bd00 IDL_cpuLoad$
-0000bd00 LOG_A_TABEND
-0000bd00 _LOG_A_TABEND
-0000bd04 LNK_dataPump$
-0000bd08 RTA_dispatcher$
-0000bd0c IDL_END$
-0000bd10 SYS$config
-0000bd20 ___pinit__
-0000bd20 pinit
-0000bd2c TRC_cinit
-0000bd30 TRC_R_mask
-0000bd30 _TRC_R_mask
-0000bd34 GBL_initdone
-0000bd38 CLK_A_TABBEG
-0000bd38 PRD_clock
-0000bd38 _PRD_clock
-0000bd3c CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[718 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a07cb9e4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a07cb9e4e50100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a07cb9e4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a09bd7c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a09bd7c9e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/c9/a09bd7c9e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ca/007e10167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ca/007e10167506001814daa3a49c232c18
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ca/007e10167506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/005c1c2ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/005c1c2ee10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/005c1c2ee10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/609617f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/609617f344070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/609617f344070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/70526824610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/70526824610b001815de8ca47440e6f8
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cb/70526824610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cc/702b870d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cc/702b870d7606001814daa3a49c232c18
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cc/702b870d7606001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/a0eccf8e41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/a0eccf8e41070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/a0eccf8e41070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/d0db0f8f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/d0db0f8f41070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/d0db0f8f41070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/f0bed02ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/f0bed02ddf0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/cd/f0bed02ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b1b0173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b1b0173f070018153483e962c7925e
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ce/b0b1b0173f070018153483e962c7925e
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d/b03da274dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d/b03da274dd0100181ce89bcacea45786
deleted file mode 100644
index 0d2065d..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d/b03da274dd0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-double b[] = {-1.8442833426489450e-03, -4.1190441269078303e-03, -2.0535873301705059e-03, -1.3703337256766852e-03, 1.5790804472022347e-03, 3.2681033644075077e-03, 3.8489975928325247e-03, 2.5928873392556755e-03, 7.3935746561684527e-04, -6.2977102617087764e-04, -7.4022462424793865e-04, 1.0838837495431400e-05, 6.2201321644194470e-04, 2.6185292432253412e-04, -9.8730303168041776e-04, -2.2339066001458349e-03, -2.5294527601668663e-03, -1.6842480785212259e-03, -4.2016236623464517e-04, 2.5804777572294233e-04, -5.8087123501295821e-05, -8.2110499385966440e-04, -1.0138712539605769e-03, -7.2462256228287853e-05, 1.5627338477316834e-03, 2.7731479415439254e-03, 2.7080617756874989e-03, 1.5299945897829833e-03, 2.9075333523994728e-04, 1.5404209240295982e-05, 7.8386710505693315e-04, 1.6284321950868475e-03, 1.3797792156491663e-03, -2.5618521768113443e-04, -2.3500948837747435e-03, -3.4788598845584733e-03, -2.9380959028223771e-03, -1.3703061862128398e-03, -2.2792940567773815e-04, -4.9434851794134783e-04, -1.7755467135066286e-03, -2.5945983820879503e-03, -1.6902711449647998e-03, 7.9565808915559846e-04, 3.3223856449474342e-03, 4.1997688462157992e-03, 3.0395347122322016e-03, 1.1215680893589990e-03, 2.9752002202157490e-04, 1.3341691376504315e-03, 3.1602890161225561e-03, 3.7417961602412893e-03, 1.8849793135973852e-03, -1.6009389970032073e-03, -4.4527074584582117e-03, -4.8293802357791162e-03, -2.9132207353127319e-03, -7.8850406846637741e-04, -6.2422045469190705e-04, -2.7015401777454782e-03, -5.0424933113328938e-03, -5.0614770814577954e-03, -1.8844015658019846e-03, 2.7175907964180819e-03, 5.6873054220569754e-03, 5.2510734703655098e-03, 2.4858008311493679e-03, 4.2982376594226818e-04, 1.3983170024624116e-03, 4.8185763803916034e-03, 7.5484357920044586e-03, 6.5370280267915745e-03, 1.5974940088091486e-03, -4.1920011112087695e-03, -6.9553964005030101e-03, -5.3222239631027140e-03, -1.6833671816308239e-03, -1.6143678346355493e-04, -2.9210596867410843e-03, -8.0344442826324330e-03, -1.0900480481099871e-02, -8.1827848211804884e-03, -9.0883142585662831e-04, 6.0966318821772843e-03, 8.1701258370888031e-03, 4.8496443047958190e-03, 4.1097124289880154e-04, 1.9261748457898115e-04, 5.7400707533348388e-03, 1.3031422928204483e-02, 1.5600386573617498e-02, 1.0120491742732048e-02, -3.6398549709864289e-04, -8.6154694364350588e-03, -9.2393938919066339e-03, -3.4913914121199800e-03, 1.5371957503610802e-03, -9.5799325715440809e-04, -1.1126447229936170e-02, -2.1547712424197108e-02, -2.3081317200630867e-02, -1.2831352513672649e-02, 2.6694425876734678e-03, 1.2374349063392154e-02, 1.0080975202499228e-02, 3.2000937820879843e-04, -4.8584066984454317e-03, 3.7319205876993832e-03, 2.3366682886858493e-02, 3.9990474678018646e-02, 3.9088852968886305e-02, 1.8511365301032767e-02, -7.9253063604813167e-03, -2.0525827169962409e-02, -1.0613484503384342e-02, 9.6001638620202695e-03, 1.4005289209909406e-02, -1.6623772517222801e-02, -7.5176947269083069e-02, -1.2649037212918582e-01, -1.2785005009999825e-01, -5.9386966029887411e-02, 5.7144488726935457e-02, 1.6633881280155735e-01, 2.1079847965764975e-01, 1.6633881280155735e-01, 5.7144488726935457e-02, -5.9386966029887411e-02, -1.2785005009999825e-01, -1.2649037212918582e-01, -7.5176947269083069e-02, -1.6623772517222801e-02, 1.4005289209909406e-02, 9.6001638620202695e-03, -1.0613484503384342e-02, -2.0525827169962409e-02, -7.9253063604813167e-03, 1.8511365301032767e-02, 3.9088852968886305e-02, 3.9990474678018646e-02, 2.3366682886858493e-02, 3.7319205876993832e-03, -4.8584066984454317e-03, 3.2000937820879843e-04, 1.0080975202499228e-02, 1.2374349063392154e-02, 2.6694425876734678e-03, -1.2831352513672649e-02, -2.3081317200630867e-02, -2.1547712424197108e-02, -1.1126447229936170e-02, -9.5799325715440809e-04, 1.5371957503610802e-03, -3.4913914121199800e-03, -9.2393938919066339e-03, -8.6154694364350588e-03, -3.6398549709864289e-04, 1.0120491742732048e-02, 1.5600386573617498e-02, 1.3031422928204483e-02, 5.7400707533348388e-03, 1.9261748457898115e-04, 4.1097124289880154e-04, 4.8496443047958190e-03, 8.1701258370888031e-03, 6.0966318821772843e-03, -9.0883142585662831e-04, -8.1827848211804884e-03, -1.0900480481099871e-02, -8.0344442826324330e-03, -2.9210596867410843e-03, -1.6143678346355493e-04, -1.6833671816308239e-03, -5.3222239631027140e-03, -6.9553964005030101e-03, -4.1920011112087695e-03, 1.5974940088091486e-03, 6.5370280267915745e-03, 7.5484357920044586e-03, 4.8185763803916034e-03, 1.3983170024624116e-03, 4.2982376594226818e-04, 2.4858008311493679e-03, 5.2510734703655098e-03, 5.6873054220569754e-03, 2.7175907964180819e-03, -1.8844015658019846e-03, -5.0614770814577954e-03, -5.0424933113328938e-03, -2.7015401777454782e-03, -6.2422045469190705e-04, -7.8850406846637741e-04, -2.9132207353127319e-03, -4.8293802357791162e-03, -4.4527074584582117e-03, -1.6009389970032073e-03, 1.8849793135973852e-03, 3.7417961602412893e-03, 3.1602890161225561e-03, 1.3341691376504315e-03, 2.9752002202157490e-04, 1.1215680893589990e-03, 3.0395347122322016e-03, 4.1997688462157992e-03, 3.3223856449474342e-03, 7.9565808915559846e-04, -1.6902711449647998e-03, -2.5945983820879503e-03, -1.7755467135066286e-03, -4.9434851794134783e-04, -2.2792940567773815e-04, -1.3703061862128398e-03, -2.9380959028223771e-03, -3.4788598845584733e-03, -2.3500948837747435e-03, -2.5618521768113443e-04, 1.3797792156491663e-03, 1.6284321950868475e-03, 7.8386710505693315e-04, 1.5404209240295982e-05, 2.9075333523994728e-04, 1.5299945897829833e-03, 2.7080617756874989e-03, 2.7731479415439254e-03, 1.5627338477316834e-03, -7.2462256228287853e-05, -1.0138712539605769e-03, -8.2110499385966440e-04, -5.8087123501295821e-05, 2.5804777572294233e-04, -4.2016236623464517e-04, -1.6842480785212259e-03, -2.5294527601668663e-03, -2.2339066001458349e-03, -9.8730303168041776e-04, 2.6185292432253412e-04, 6.2201321644194470e-04, 1.0838837495431400e-05, -7.4022462424793865e-04, -6.2977102617087764e-04, 7.3935746561684527e-04, 2.5928873392556755e-03, 3.8489975928325247e-03, 3.2681033644075077e-03, 1.5790804472022347e-03, -1.3703337256766852e-03, -2.0535873301705059e-03, -4.1190441269078303e-03, -1.8442833426489450e-03 }
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/d08eae173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/d08eae173f070018153483e962c7925e
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/d08eae173f070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/f0dcae173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/f0dcae173f070018153483e962c7925e
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d1/f0dcae173f070018153483e962c7925e
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/701a162ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/701a162ee10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/701a162ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/b0c9bc50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/b0c9bc50dd0100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d2/b0c9bc50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d4/40848a11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d4/40848a11e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d4/40848a11e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/600e8111e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/600e8111e10100181ce89bcacea45786
deleted file mode 100644
index f0c5427..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/600e8111e10100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 14:51:10 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90998a79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90998a79cd0100181ce89bcacea45786
deleted file mode 100644
index 1f831ca..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90998a79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718aeH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90b77924610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90b77924610b001815de8ca47440e6f8
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d5/90b77924610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d6/d0fbef6bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d6/d0fbef6bdd0100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d6/d0fbef6bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/302117f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/302117f344070018153483e962c7925e
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/302117f344070018153483e962c7925e
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/50feebe4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/50feebe4e50100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/50feebe4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/80e1a03a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/80e1a03a45070018153483e962c7925e
deleted file mode 100644
index f63d6e3..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/80e1a03a45070018153483e962c7925e
+++ /dev/null
@@ -1,150 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N]= {0};
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (double) sample_in / 30000.0;
- sample_out = circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N;
- ptr--;
-}
-
-// Perform linear convolution
-short circ_fir()
-{
- double y = 0;
- int i;
- for(i = ptr; i < N+ptr; i++) {
- y += buffer[i%N] * b[N-i-ptr-1];
- }
- return y*30000;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/90d4cf2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/90d4cf2ddf0100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d7/90d4cf2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/6090e924610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/6090e924610b001815de8ca47440e6f8
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/6090e924610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/60d918afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/60d918afe50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/60d918afe50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/90288879cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/90288879cd0100181ce89bcacea45786
deleted file mode 100644
index f13e3eb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/90288879cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header File */
-#include "dsp_bios_cfg.h"
-
-/* Config Structures */
-/* Handles */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/d0bfe524610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/d0bfe524610b001815de8ca47440e6f8
deleted file mode 100644
index 98b7493..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/d8/d0bfe524610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,1761 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Feb 01 11:44:17 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000b000
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000c417 00033be9 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002a40
- 000043c0 00000900 rts6700.lib : divd.obj (.text:__divd)
- 00004cc0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00005140 00000380 rts6700.lib : frcmpyd_div.obj (.text:__frcmpyd_div)
- 000054c0 00000340 intio.obj (.text)
- 00005800 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005ae0 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005d20 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005ee0 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00006080 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00006200 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00006380 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 000064c0 00000120 : sinit.obj (.text:_call_dtors)
- 000065e0 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 000066e0 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 000067e0 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 000068e0 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 000069c0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006a80 000000a0 rts6700.lib : mpyll.obj (.text:__mpyll)
- 00006b20 000000a0 : remu.obj (.text:__remu)
- 00006bc0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006c60 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006ca0 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006ce0 00000040 : divd.obj (.text:___isnan)
- 00006d20 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006d40 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006d60 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00006d80 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006da0 00000020 : _lock.obj (.text:__register_lock)
- 00006dc0 00000020 : _lock.obj (.text:__register_unlock)
- 00006de0 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006e00 00001764
- 00006e00 00000820 intio.obj (.cinit)
- 00007620 00000564 dsp_bios_cfg.obj (.cinit)
- 00007b84 00000004 --HOLE-- [fill = 0]
- 00007b88 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007df4 00000004 --HOLE-- [fill = 0]
- 00007df8 000001a4 : knl.o67 (.cinit)
- 00007f9c 00000004 --HOLE-- [fill = 0]
- 00007fa0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 000080cc 00000004 --HOLE-- [fill = 0]
- 000080d0 000000b0 bios.a67 : swi.o67 (.cinit)
- 00008180 00000070 : tsk.o67 (.cinit)
- 000081f0 00000060 : tsk_stup.o67 (.cinit)
- 00008250 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 000082ac 00000004 --HOLE-- [fill = 0]
- 000082b0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00008304 00000004 --HOLE-- [fill = 0]
- 00008308 0000004c bios.a67 : rta.o67 (.cinit)
- 00008354 00000004 --HOLE-- [fill = 0]
- 00008358 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 000083a4 00000004 --HOLE-- [fill = 0]
- 000083a8 00000034 bios.a67 : hwi.o67 (.cinit)
- 000083dc 00000004 --HOLE-- [fill = 0]
- 000083e0 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00008410 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 0000843c 00000004 --HOLE-- [fill = 0]
- 00008440 0000002c rts6700.lib : exit.obj (.cinit)
- 0000846c 00000004 --HOLE-- [fill = 0]
- 00008470 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00008494 00000004 --HOLE-- [fill = 0]
- 00008498 0000001c : sys.o67 (.cinit)
- 000084b4 00000004 --HOLE-- [fill = 0]
- 000084b8 0000001c rts6700.lib : _lock.obj (.cinit)
- 000084d4 00000004 --HOLE-- [fill = 0]
- 000084d8 0000001c : atexit.obj (.cinit)
- 000084f4 00000004 --HOLE-- [fill = 0]
- 000084f8 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00008510 00000010 rts6700.lib : divd.obj (.cinit)
- 00008520 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 0000852c 00000004 --HOLE-- [fill = 0]
- 00008530 0000000c : idl_busy.o67 (.cinit)
- 0000853c 00000004 --HOLE-- [fill = 0]
- 00008540 0000000c : knl_swit.o67 (.cinit)
- 0000854c 00000004 --HOLE-- [fill = 0]
- 00008550 0000000c rts6700.lib : sinit.obj (.cinit)
- 0000855c 00000004 --HOLE-- [fill = 0]
- 00008560 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00008564 00000004
- 00008564 00000004 --HOLE-- [fill = 0]
-
-.far 0 00008568 000014c8 UNINITIALIZED
- 00008568 00000fb8 intio.obj (.far)
- 00009520 00000188 rts6700.lib : atexit.obj (.far)
- 000096a8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 0000979c 000000d8 bios.a67 : knl.o67 (.far)
- 00009874 0000005c : tsk.o67 (.far)
- 000098d0 00000054 : obj_init.o67 (.far)
- 00009924 00000050 : tsk_stup.o67 (.far)
- 00009974 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000099ac 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 000099d4 00000020 bios.a67 : sys.o67 (.far)
- 000099f4 00000010 : knl_tick.o67 (.far)
- 00009a04 0000000c : utl_putc.o67 (.far)
- 00009a10 0000000c rts6700.lib : exit.obj (.far)
- 00009a1c 00000008 : _lock.obj (.far)
- 00009a24 00000008 : divd.obj (.far)
- 00009a2c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009a30 00000010 UNINITIALIZED
- 00009a30 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009a40 00000ea0
- 00009a40 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009e40 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 0000a180 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 0000a480 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 0000a5c0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 0000a6a0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a720 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a780 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a7e0 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a820 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a860 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a880 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a8a0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a8c0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a8e0 0000044c UNINITIALIZED
- 0000a8e0 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000acf0 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000ad10 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000ad2c 00000010 UNINITIALIZED
- 0000ad2c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000ad40 00000420
- 0000ad40 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000b000 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000b0c0 00000080 : tsk_init.o67 (.sysinit)
- 0000b140 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000b160 00000400 UNINITIALIZED
- 0000b160 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000b560 00000400 UNINITIALIZED
- 0000b560 00000400 --HOLE--
-
-.bss 0 0000b960 00000342 UNINITIALIZED
- 0000b960 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000ba60 000000cc : biosdata.o67 (.bss)
- 0000bb2c 0000009c : swi.o67 (.bss)
- 0000bbc8 00000048 : knl.o67 (.bss)
- 0000bc10 00000018 : hwi.o67 (.bss)
- 0000bc28 00000018 dsp_bios_cfg.obj (.bss)
- 0000bc40 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000bc58 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000bc68 0000000c bios.a67 : tsk.o67 (.bss)
- 0000bc74 00000008 : clk_data.o67 (.bss)
- 0000bc7c 00000008 : sys.o67 (.bss)
- 0000bc84 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000bc8c 00000008 intio.obj (.bss)
- 0000bc94 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000bc98 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000bc9c 00000004 : idl_busy.o67 (.bss)
- 0000bca0 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000bca4 00000200
- 0000bca4 00000200 --HOLE-- [fill = 00000000]
-
-.gblinit 0 0000bea4 00000040
- 0000bea4 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.log 0 0000bee4 00000018
- 0000bee4 00000018 dsp_bios_cfg.obj (.log)
-
-.LOG_system$buf
-* 0 0000bf00 00000100 UNINITIALIZED
- 0000bf00 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000c000 00000100 UNINITIALIZED
- 0000c000 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000c100 000000f9
- 0000c100 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000c14e 00000002 --HOLE-- [fill = 0]
- 0000c150 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000c190 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000c1b3 00000022 : utl_doer.o67 (.const)
- 0000c1d5 00000003 --HOLE-- [fill = 0]
- 0000c1d8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000c1f8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000c1f9 0000003f COPY SECTION
- 0000c1f9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000c1fc 000000c8 UNINITIALIZED
- 0000c1fc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000c2c4 00000060 UNINITIALIZED
- 0000c2c4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.hst 0 0000c324 0000003c UNINITIALIZED
- 0000c324 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000c360 00000030
- 0000c360 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000c390 0000002c UNINITIALIZED
- 0000c390 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000c3bc 00000028
- 0000c3bc 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.idlcal 0 0000c3e4 00000010 UNINITIALIZED
- 0000c3e4 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000c3f4 00000010 UNINITIALIZED
- 0000c3f4 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000c404 0000000c
- 0000c404 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000c408 00000004 : rtdx_mon.o62 (.pinit)
- 0000c40c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000c410 0000000c
- 0000c410 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000c41c 00000008 UNINITIALIZED
- 0000c41c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b960 $bss
-0000b960 .bss
-00000000 .data
-000043c0 .text
-0000aee4 BIOS$$CLKOFF
-0000aea4 BIOS$$CLKON
-0000ad40 BIOS_init
-0000af4c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000c41c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000ba88 CLK_D_idletime
-0000ba84 CLK_D_isrhook
-0000ba80 CLK_D_tabbeg
-0000ba7c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000ba78 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000c420 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-000060a8 GBL_USERINITFXN
-00000001 GBL_boot
-0000c418 GBL_initdone
-0000b560 GBL_stackbeg
-0000b95f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000c324 HST_A_TABBEG
-0000c360 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000baf4 HST_D_chanmask
-0000baf8 HST_D_tabbeg
-0000bafc HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000bc20 HWI_D_bss
-0000bc24 HWI_D_ccmask
-0000bc10 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000c3e4 IDL_A_CALBEG
-0000ad2c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000bc9c IDL_D_busyObj
-0000ba68 IDL_D_calbeg
-0000ba64 IDL_D_calibrate
-0000ba60 IDL_D_tabbeg
-0000ad38 IDL_END
-0000c3f0 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000c384 IDL_busyObj
-0000c233 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000c22d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000c380 IDL_busyObj$stsobj
-0000c230 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000ad2c IDL_cpuLoad
-0000c3e4 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000c390 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000c364 KNL_swi$sts
-0000c209 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000c1f9 KNL_swi$sts$maxfmt
-0000c360 KNL_swi$sts$stsobj
-0000c201 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000ad30 LNK_dataPump
-0000c3e8 LNK_dataPump$
-0000bc44 LNK_dspFrameReadyMask
-0000bc40 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000bc4c LNK_readDone
-0000bc50 LNK_readFail
-0000bc48 LNK_readPend
-00000370 LNK_rrloop
-0000bc54 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bee4 LOG_A_TABBEG
-0000befc LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000ba6c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bee4 LOG_system
-0000bf00 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000c1fc PIP_A_TABBEG
-0000c2c4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000ba70 PIP_D_tabbeg
-0000ba74 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000bab0 PRD_D_cur
-0000bab4 PRD_D_elapsed
-0000bab8 PRD_D_prevtim
-0000babc PRD_D_scalar
-0000bac0 PRD_D_swihandle
-0000bac4 PRD_D_tabbeg
-0000bac8 PRD_D_tablen
-0000bacc PRD_D_thook
-0000baac PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000c41c PRD_clock
-00000001 QUE$
-0000bad0 RTA_D_fromHost
-0000bad8 RTA_D_logval
-0000bae8 RTA_D_stsval
-0000bad4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000ad34 RTA_dispatcher
-0000c3ec RTA_dispatcher$
-00001f28 RTA_execute
-0000c328 RTA_fromHost
-00009a30 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000c1fc RTA_fromHost$pipe
-0000c22c RTA_fromHost$pipe$aaa
-0000c25c RTA_fromHost$pipe$bbb
-0000bc28 RTA_fromHost$pipe$dtab
-0000c200 RTA_fromHost$pipe$rd
-0000c230 RTA_fromHost$pipe$wr
-0000c330 RTA_fromHost$rtdx
-0000c344 RTA_toHost
-0000c000 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000c260 RTA_toHost$pipe
-0000c290 RTA_toHost$pipe$aaa
-0000c2c0 RTA_toHost$pipe$bbb
-0000bc34 RTA_toHost$pipe$dtab
-0000c264 RTA_toHost$pipe$rd
-0000c294 RTA_toHost$pipe$wr
-0000c34c RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000c360 STS_A_TABBEG
-0000c390 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000c390 SWI_A_TABBEG
-0000c3bc SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000bb44 SWI_D_curfxn
-0000bb34 SWI_D_curmask
-0000bb40 SWI_D_curmbox
-0000bb38 SWI_D_curset
-0000bb30 SWI_D_execaddr
-0000bb4c SWI_D_inswi
-0000bb3c SWI_D_lock
-0000bb48 SWI_D_rdybeg
-0000bb50 SWI_D_rdytab
-0000bb2c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000c3f4 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000c414 TRC_R_mask
-0000c410 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000c2d0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000b160 TSK_idle$stack
-0000b4f8 TSK_idle$stkptr
-0000c374 TSK_idle$sts
-0000c223 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000c213 TSK_idle$sts$maxfmt
-0000c370 TSK_idle$sts$stsobj
-0000c21b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000ad40 _BIOS_init
-0000af4c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000bc74 _CLK_DFLTMICROSECS
-0000baa8 _CLK_D_countspms
-0000ba9c _CLK_D_dirty
-0000bc78 _CLK_D_microseconds
-0000baa0 _CLK_D_prd
-0000baa4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000ba8c _CLK_htimeDiv
-0000ba90 _CLK_htimeMult
-0000bc94 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000ba94 _CLK_ltimeDiv
-0000ba98 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-000094f8 _Config
-0000bc84 _DSK6713_AIC23_codeccontrolhandle
-0000bc88 _DSK6713_AIC23_codecdatahandle
-000062ec _DSK6713_AIC23_config
-00005800 _DSK6713_AIC23_openCodec
-000062c8 _DSK6713_AIC23_rget
-00006200 _DSK6713_AIC23_rset
-00004e40 _DSK6713_getVersion
-00004e90 _DSK6713_init
-00004dac _DSK6713_rget
-00004d98 _DSK6713_rset
-0000bca0 _DSK6713_version
-00004cc0 _DSK6713_wait
-00004d64 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000bb04 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000bb08 _GBL_freq
-00004320 _GBL_getVersion
-0000bb00 _GBL_procId
-000060a8 _GBL_setPLLto225MHz
-0000c324 _HST_A_TABBEG
-0000c360 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000bc1c _HWI_D_inhwi
-0000bc10 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b958 _HWI_STKBOTTOM
-0000b560 _HWI_STKTOP
-0000bc10 _HWI_data
-00004020 _HWI_disable
-0000b960 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000bc90 _H_Codec
-0000c384 _IDL_busyObj
-0000ad2c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006c60 _IRQ_enable
-00006d20 _IRQ_globalDisable
-00006d40 _IRQ_globalEnable
-00005d20 _IRQ_map
-00006d60 _IRQ_nmiEnable
-00005648 _ISR_AIC
-0000bbd0 _KNL_alarm
-00003440 _KNL_check
-0000bbf4 _KNL_curqueue
-0000bbe4 _KNL_curtask
-0000bbec _KNL_curtime
-0000983c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000bc0c _KNL_idlefxn
-0000bbd8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000bbf8 _KNL_maxqueue
-00003aa0 _KNL_post
-0000bbe8 _KNL_prevtask
-0000bbdc _KNL_priority
-0000979c _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000bbe0 _KNL_set
-0000bbd4 _KNL_setpri
-0000c390 _KNL_swi
-0000bbf0 _KNL_swiptr
-00002cec _KNL_switch
-0000bc00 _KNL_tcreatefxn
-0000bc04 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000bc08 _KNL_treadyfxn
-0000bbfc _KNL_tswitchfxn
-0000bbc8 _KNL_wFlag
-0000bbcc _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000ad30 _LNK_dataPump
-0000bc44 _LNK_dspFrameReadyMask
-0000bc40 _LNK_dspFrameRequestMask
-0000bc4c _LNK_readDone
-0000bc50 _LNK_readFail
-0000bc48 _LNK_readPend
-0000bc54 _LNK_writeFail
-0000bee4 _LOG_A_TABBEG
-0000befc _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000ba6c _LOG_D_system
-00003ea0 _LOG_event
-0000bee4 _LOG_system
-000065e0 _MCBSP_open
-00005ee0 _MCBSP_reset
-000066e0 _MCBSP_start
-0000bb0c _MEM_D_NUMSEGMENTS
-0000bb14 _MEM_D_freelist
-0000bb18 _MEM_D_lockaddr
-0000bb10 _MEM_D_memtab
-0000bb1c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000b140 _OBJ_init
-00009908 _OBJ_segtab
-000098d0 _OBJ_table
-0000c1fc _PIP_A_TABBEG
-0000c2c4 _PIP_A_TABEND
-0000baac _PRD_D_tick
-0000c41c _PRD_clock
-0000ad34 _RTA_dispatcher
-0000c328 _RTA_fromHost
-0000c344 _RTA_toHost
-0000a8e0 _RTDX_Buffer
-0000acec _RTDX_Buffer_End
-0000a720 _RTDX_Buffer_Initialize
-0000a860 _RTDX_Buffer_Read
-0000a780 _RTDX_Buffer_ReadCB
-0000a7e0 _RTDX_Buffer_Size
-0000ace8 _RTDX_Buffer_Start
-0000a880 _RTDX_Buffer_Write
-00009e40 _RTDX_Buffer_WriteCB
-0000a820 _RTDX_Final_RT_Monitor
-0000a6a0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a8c0 _RTDX_Mask_IER
-0000a480 _RTDX_Mon_Queue
-00009a40 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000acfc _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000c360 _STS_A_TABBEG
-0000c390 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000bb44 _SWI_D_curfxn
-0000bb34 _SWI_D_curmask
-0000bb38 _SWI_D_curset
-0000bb30 _SWI_D_execaddr
-0000bb4c _SWI_D_inswi
-0000bb3c _SWI_D_lock
-0000bb48 _SWI_D_rdybeg
-0000bb2c _SWI_D_runaddr
-0000bb2c _SWI_data
-00000e50 _SWI_post
-0000bb20 _SYS
-0000bca4 _SYS_PUTCBEG
-0000bea3 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-000099d4 _SYS_exitStack
-0000bc7c _SYS_exitStackPtr
-0000bc80 _SYS_exitStackTop
-0000c414 _TRC_R_mask
-0000bc70 _TSK
-00009874 _TSK_ATTRS
-00009890 _TSK_config
-00002fa0 _TSK_exit
-0000c2d0 _TSK_idle
-0000b0c0 _TSK_init
-0000bc68 _TSK_nTasks
-0000bc6c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000098b0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000bb28 __HOOK_NUMHOOKS
-0000bb24 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009794 __IRQ_dispatchTable
-000096d0 __IRQ_eventTable
-00006de0 __IRQ_hookFetchPacket
-00009754 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000099a4 __MCBSP_hDev0
-000099a8 __MCBSP_hDev1
-0000994c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009924 __TSK_mutex
-00009a18 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006ca0 ___add_dtor
-00009520 ___atexit_func_id__
-ffffffff ___binit__
-0000b960 ___bss__
-ffffffff ___c_args__
-00006e00 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000bca2 ___end__
-00006e00 ___etext__
-0000c404 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009a10 __cleanup_ptr
-000043c0 __divd
-00009a14 __dtors_ptr
-00005140 __frcmpyd_div
-00009a1c __lock
-00006a80 __mpyll
-00006d80 __nop
-00006da0 __register_lock
-00006dc0 __register_unlock
-00006b20 __remu
-0000b560 __stack
-00006380 __strasgi
-00009a20 __unlock
-000067e0 _atexit
-00008568 _b
-00008d30 _buffer
-0000b000 _c_int00
-000064c0 _call_dtors
-00005708 _circ_fir
-00009a2c _dtors
-000055b0 _init_HWI
-000054ec _init_hardware
-000054c0 _main
-00005ae0 _memcpy
-0000695c _mono_read_16Bit
-00006934 _mono_write_16Bit
-0000bc8c _ptr
-0000bc60 _rtdxNullChanCnt
-0000bc64 _rtdxNullFuncCnt
-0000acf0 _rtdx_buffer_state
-0000ad10 _rtdx_mon_state
-00006908 _stereo_read_16Bit
-000068e0 _stereo_write_16Bit
-00006080 _wait500nS
-ffffffff binit
-00006e00 cinit
-00000000 edata
-0000bca2 end
-00006e00 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000c404 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divd
-00004cc0 _DSK6713_wait
-00004d64 _DSK6713_waitusec
-00004d98 _DSK6713_rset
-00004dac _DSK6713_rget
-00004e20 GBL_CLKIN
-00004e40 _DSK6713_getVersion
-00004e90 _DSK6713_init
-00005140 __frcmpyd_div
-00005205 GBL_A_VERSION
-000054c0 _main
-000054ec _init_hardware
-000055b0 _init_HWI
-00005648 _ISR_AIC
-00005708 _circ_fir
-00005800 _DSK6713_AIC23_openCodec
-00005ae0 _memcpy
-00005d20 _IRQ_map
-00005ee0 _MCBSP_reset
-00006080 _wait500nS
-000060a8 GBL_USERINITFXN
-000060a8 _GBL_setPLLto225MHz
-00006200 _DSK6713_AIC23_rset
-000062c8 _DSK6713_AIC23_rget
-000062ec _DSK6713_AIC23_config
-00006380 __strasgi
-000064c0 _call_dtors
-000065e0 _MCBSP_open
-000066e0 _MCBSP_start
-000067e0 _atexit
-000068e0 _stereo_write_16Bit
-00006908 _stereo_read_16Bit
-00006934 _mono_write_16Bit
-0000695c _mono_read_16Bit
-00006a80 __mpyll
-00006b20 __remu
-00006c60 _IRQ_enable
-00006ca0 ___add_dtor
-00006d20 _IRQ_globalDisable
-00006d40 _IRQ_globalEnable
-00006d60 _IRQ_nmiEnable
-00006d80 __nop
-00006da0 __register_lock
-00006dc0 __register_unlock
-00006de0 __IRQ_hookFetchPacket
-00006e00 ___cinit__
-00006e00 ___etext__
-00006e00 cinit
-00006e00 etext
-00008568 _b
-00008d30 _buffer
-000094f8 _Config
-00009520 ___atexit_func_id__
-000096d0 __IRQ_eventTable
-00009754 __IRQ_intTable
-00009794 __IRQ_dispatchTable
-0000979c _KNL_queues
-0000983c _KNL_dummy
-00009874 _TSK_ATTRS
-00009890 _TSK_config
-000098b0 _TSK_timerSem
-000098d0 _OBJ_table
-00009908 _OBJ_segtab
-00009924 __TSK_mutex
-0000994c __MEM_mutex
-000099a4 __MCBSP_hDev0
-000099a8 __MCBSP_hDev1
-000099d4 _SYS_exitStack
-00009a10 __cleanup_ptr
-00009a14 __dtors_ptr
-00009a18 ___TI_enable_exit_profile_output
-00009a1c __lock
-00009a20 __unlock
-00009a2c _dtors
-00009a30 RTA_fromHost$buf
-00009a40 _RTDX_Poll
-00009e40 _RTDX_Buffer_WriteCB
-0000a480 _RTDX_Mon_Queue
-0000a6a0 _RTDX_Init_RT_Monitor
-0000a720 _RTDX_Buffer_Initialize
-0000a780 _RTDX_Buffer_ReadCB
-0000a7e0 _RTDX_Buffer_Size
-0000a820 _RTDX_Final_RT_Monitor
-0000a860 _RTDX_Buffer_Read
-0000a880 _RTDX_Buffer_Write
-0000a8c0 _RTDX_Mask_IER
-0000a8e0 _RTDX_Buffer
-0000ace8 _RTDX_Buffer_Start
-0000acec _RTDX_Buffer_End
-0000acf0 _rtdx_buffer_state
-0000acfc _RTDX_writing
-0000ad10 _rtdx_mon_state
-0000ad2c IDL_A_TABBEG
-0000ad2c IDL_cpuLoad
-0000ad2c _IDL_cpuLoad
-0000ad30 LNK_dataPump
-0000ad30 _LNK_dataPump
-0000ad34 RTA_dispatcher
-0000ad34 _RTA_dispatcher
-0000ad38 IDL_END
-0000ad40 BIOS_init
-0000ad40 _BIOS_init
-0000aea4 BIOS$$CLKON
-0000aee4 BIOS$$CLKOFF
-0000af4c BIOS_start
-0000af4c _BIOS_start
-0000b000 _c_int00
-0000b0c0 _TSK_init
-0000b140 _OBJ_init
-0000b160 TSK_idle$stack
-0000b4f8 TSK_idle$stkptr
-0000b560 GBL_stackbeg
-0000b560 _HWI_STKTOP
-0000b560 __stack
-0000b958 _HWI_STKBOTTOM
-0000b95f GBL_stackend
-0000b960 $bss
-0000b960 .bss
-0000b960 _HWI_dispatchTab
-0000b960 ___bss__
-0000ba60 IDL_D_tabbeg
-0000ba64 IDL_D_calibrate
-0000ba68 IDL_D_calbeg
-0000ba6c LOG_D_system
-0000ba6c _LOG_D_system
-0000ba70 PIP_D_tabbeg
-0000ba74 PIP_D_tablen
-0000ba78 CLK_R_time
-0000ba7c CLK_D_timefxn
-0000ba80 CLK_D_tabbeg
-0000ba84 CLK_D_isrhook
-0000ba88 CLK_D_idletime
-0000ba8c _CLK_htimeDiv
-0000ba90 _CLK_htimeMult
-0000ba94 _CLK_ltimeDiv
-0000ba98 _CLK_ltimeMult
-0000ba9c _CLK_D_dirty
-0000baa0 _CLK_D_prd
-0000baa4 _CLK_D_tddr
-0000baa8 _CLK_D_countspms
-0000baac PRD_D_tick
-0000baac _PRD_D_tick
-0000bab0 PRD_D_cur
-0000bab4 PRD_D_elapsed
-0000bab8 PRD_D_prevtim
-0000babc PRD_D_scalar
-0000bac0 PRD_D_swihandle
-0000bac4 PRD_D_tabbeg
-0000bac8 PRD_D_tablen
-0000bacc PRD_D_thook
-0000bad0 RTA_D_fromHost
-0000bad4 RTA_D_toHost
-0000bad8 RTA_D_logval
-0000bae8 RTA_D_stsval
-0000baf4 HST_D_chanmask
-0000baf8 HST_D_tabbeg
-0000bafc HST_D_tabend
-0000bb00 _GBL_procId
-0000bb04 _GBL_clkIn
-0000bb08 _GBL_freq
-0000bb0c _MEM_D_NUMSEGMENTS
-0000bb10 _MEM_D_memtab
-0000bb14 _MEM_D_freelist
-0000bb18 _MEM_D_lockaddr
-0000bb1c _MEM_D_unlockaddr
-0000bb20 _SYS
-0000bb24 __HOOK_knlId
-0000bb28 __HOOK_NUMHOOKS
-0000bb2c SWI_D_runaddr
-0000bb2c _SWI_D_runaddr
-0000bb2c _SWI_data
-0000bb30 SWI_D_execaddr
-0000bb30 _SWI_D_execaddr
-0000bb34 SWI_D_curmask
-0000bb34 _SWI_D_curmask
-0000bb38 SWI_D_curset
-0000bb38 _SWI_D_curset
-0000bb3c SWI_D_lock
-0000bb3c _SWI_D_lock
-0000bb40 SWI_D_curmbox
-0000bb44 SWI_D_curfxn
-0000bb44 _SWI_D_curfxn
-0000bb48 SWI_D_rdybeg
-0000bb48 _SWI_D_rdybeg
-0000bb4c SWI_D_inswi
-0000bb4c _SWI_D_inswi
-0000bb50 SWI_D_rdytab
-0000bbc8 _KNL_wFlag
-0000bbcc _KNL_wList
-0000bbd0 _KNL_alarm
-0000bbd4 _KNL_setpri
-0000bbd8 _KNL_inactive
-0000bbdc _KNL_priority
-0000bbe0 _KNL_set
-0000bbe4 _KNL_curtask
-0000bbe8 _KNL_prevtask
-0000bbec _KNL_curtime
-0000bbf0 _KNL_swiptr
-0000bbf4 _KNL_curqueue
-0000bbf8 _KNL_maxqueue
-0000bbfc _KNL_tswitchfxn
-0000bc00 _KNL_tcreatefxn
-0000bc04 _KNL_tdeletefxn
-0000bc08 _KNL_treadyfxn
-0000bc0c _KNL_idlefxn
-0000bc10 HWI_D_spsave
-0000bc10 _HWI_D_spsave
-0000bc10 _HWI_data
-0000bc1c _HWI_D_inhwi
-0000bc20 HWI_D_bss
-0000bc24 HWI_D_ccmask
-0000bc28 RTA_fromHost$pipe$dtab
-0000bc34 RTA_toHost$pipe$dtab
-0000bc40 LNK_dspFrameRequestMask
-0000bc40 _LNK_dspFrameRequestMask
-0000bc44 LNK_dspFrameReadyMask
-0000bc44 _LNK_dspFrameReadyMask
-0000bc48 LNK_readPend
-0000bc48 _LNK_readPend
-0000bc4c LNK_readDone
-0000bc4c _LNK_readDone
-0000bc50 LNK_readFail
-0000bc50 _LNK_readFail
-0000bc54 LNK_writeFail
-0000bc54 _LNK_writeFail
-0000bc60 _rtdxNullChanCnt
-0000bc64 _rtdxNullFuncCnt
-0000bc68 _TSK_nTasks
-0000bc6c _TSK_pid
-0000bc70 _TSK
-0000bc74 _CLK_DFLTMICROSECS
-0000bc78 _CLK_D_microseconds
-0000bc7c _SYS_exitStackPtr
-0000bc80 _SYS_exitStackTop
-0000bc84 _DSK6713_AIC23_codeccontrolhandle
-0000bc88 _DSK6713_AIC23_codecdatahandle
-0000bc8c _ptr
-0000bc90 _H_Codec
-0000bc94 _CLK_htimePerLtime
-0000bc9c IDL_D_busyObj
-0000bca0 _DSK6713_version
-0000bca2 ___end__
-0000bca2 end
-0000bca4 _SYS_PUTCBEG
-0000bea3 _SYS_PUTCEND
-0000bee4 LOG_A_TABBEG
-0000bee4 LOG_system
-0000bee4 _LOG_A_TABBEG
-0000bee4 _LOG_system
-0000befc LOG_A_TABEND
-0000befc _LOG_A_TABEND
-0000bf00 LOG_system$buf
-0000c000 RTA_toHost$buf
-0000c1f9 KNL_swi$sts$maxfmt
-0000c1fc PIP_A_TABBEG
-0000c1fc RTA_fromHost$pipe
-0000c1fc _PIP_A_TABBEG
-0000c200 RTA_fromHost$pipe$rd
-0000c201 KNL_swi$sts$sumfmt
-0000c209 KNL_swi$sts$avgfmt
-0000c213 TSK_idle$sts$maxfmt
-0000c21b TSK_idle$sts$sumfmt
-0000c223 TSK_idle$sts$avgfmt
-0000c22c RTA_fromHost$pipe$aaa
-0000c22d IDL_busyObj$maxfmt
-0000c230 IDL_busyObj$sumfmt
-0000c230 RTA_fromHost$pipe$wr
-0000c233 IDL_busyObj$avgfmt
-0000c25c RTA_fromHost$pipe$bbb
-0000c260 RTA_toHost$pipe
-0000c264 RTA_toHost$pipe$rd
-0000c290 RTA_toHost$pipe$aaa
-0000c294 RTA_toHost$pipe$wr
-0000c2c0 RTA_toHost$pipe$bbb
-0000c2c4 PIP_A_TABEND
-0000c2c4 _PIP_A_TABEND
-0000c2d0 TSK_idle
-0000c2d0 _TSK_idle
-0000c324 HST_A_TABBEG
-0000c324 _HST_A_TABBEG
-0000c328 RTA_fromHost
-0000c328 _RTA_fromHost
-0000c330 RTA_fromHost$rtdx
-0000c344 RTA_toHost
-0000c344 _RTA_toHost
-0000c34c RTA_toHost$rtdx
-0000c360 HST_A_TABEND
-0000c360 KNL_swi$sts$stsobj
-0000c360 STS_A_TABBEG
-0000c360 _HST_A_TABEND
-0000c360 _STS_A_TABBEG
-0000c364 KNL_swi$sts
-0000c370 TSK_idle$sts$stsobj
-0000c374 TSK_idle$sts
-0000c380 IDL_busyObj$stsobj
-0000c384 IDL_busyObj
-0000c384 _IDL_busyObj
-0000c390 KNL_swi
-0000c390 STS_A_TABEND
-0000c390 SWI_A_TABBEG
-0000c390 _KNL_swi
-0000c390 _STS_A_TABEND
-0000c3bc SWI_A_TABEND
-0000c3e4 IDL_A_CALBEG
-0000c3e4 IDL_cpuLoad$
-0000c3e8 LNK_dataPump$
-0000c3ec RTA_dispatcher$
-0000c3f0 IDL_END$
-0000c3f4 SYS$config
-0000c404 ___pinit__
-0000c404 pinit
-0000c410 TRC_cinit
-0000c414 TRC_R_mask
-0000c414 _TRC_R_mask
-0000c418 GBL_initdone
-0000c41c CLK_A_TABBEG
-0000c41c PRD_clock
-0000c41c _PRD_clock
-0000c420 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[720 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/30eb7f79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/30eb7f79cd0100181ce89bcacea45786
deleted file mode 100644
index 1f831ca..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/30eb7f79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718aeH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/d0ffb0173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/d0ffb0173f070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/da/d0ffb0173f070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/10d9dc3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/10d9dc3a45070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/10d9dc3a45070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/208e7810d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/208e7810d80100181ce89bcacea45786
deleted file mode 100644
index c60f879..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/db/208e7810d80100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
-double fir[] = {-1.8442833426489450e-03 -4.1190441269078303e-03, -2.0535873301705059e-03, -1.3703337256766852e-03, 1.5790804472022347e-03, 3.2681033644075077e-03, 3.8489975928325247e-03, 2.5928873392556755e-03, 7.3935746561684527e-04, -6.2977102617087764e-04, -7.4022462424793865e-04, 1.0838837495431400e-05, 6.2201321644194470e-04, 2.6185292432253412e-04, -9.8730303168041776e-04, -2.2339066001458349e-03, -2.5294527601668663e-03, -1.6842480785212259e-03, -4.2016236623464517e-04, 2.5804777572294233e-04, -5.8087123501295821e-05, -8.2110499385966440e-04, -1.0138712539605769e-03, -7.2462256228287853e-05, 1.5627338477316834e-03, 2.7731479415439254e-03, 2.7080617756874989e-03, 1.5299945897829833e-03, 2.9075333523994728e-04, 1.5404209240295982e-05, 7.8386710505693315e-04, 1.6284321950868475e-03, 1.3797792156491663e-03, -2.5618521768113443e-04, -2.3500948837747435e-03, -3.4788598845584733e-03, -2.9380959028223771e-03, -1.3703061862128398e-03, -2.2792940567773815e-04, -4.9434851794134783e-04, -1.7755467135066286e-03, -2.5945983820879503e-03, -1.6902711449647998e-03, 7.9565808915559846e-04, 3.3223856449474342e-03, 4.1997688462157992e-03, 3.0395347122322016e-03, 1.1215680893589990e-03, 2.9752002202157490e-04, 1.3341691376504315e-03, 3.1602890161225561e-03, 3.7417961602412893e-03, 1.8849793135973852e-03, -1.6009389970032073e-03, -4.4527074584582117e-03, -4.8293802357791162e-03, -2.9132207353127319e-03, -7.8850406846637741e-04, -6.2422045469190705e-04, -2.7015401777454782e-03, -5.0424933113328938e-03, -5.0614770814577954e-03, -1.8844015658019846e-03, 2.7175907964180819e-03, 5.6873054220569754e-03, 5.2510734703655098e-03, 2.4858008311493679e-03, 4.2982376594226818e-04, 1.3983170024624116e-03, 4.8185763803916034e-03, 7.5484357920044586e-03, 6.5370280267915745e-03, 1.5974940088091486e-03, -4.1920011112087695e-03, -6.9553964005030101e-03, -5.3222239631027140e-03, -1.6833671816308239e-03, -1.6143678346355493e-04, -2.9210596867410843e-03, -8.0344442826324330e-03, -1.0900480481099871e-02, -8.1827848211804884e-03, -9.0883142585662831e-04, 6.0966318821772843e-03, 8.1701258370888031e-03, 4.8496443047958190e-03, 4.1097124289880154e-04, 1.9261748457898115e-04, 5.7400707533348388e-03, 1.3031422928204483e-02, 1.5600386573617498e-02, 1.0120491742732048e-02, -3.6398549709864289e-04, -8.6154694364350588e-03, -9.2393938919066339e-03, -3.4913914121199800e-03, 1.5371957503610802e-03, -9.5799325715440809e-04, -1.1126447229936170e-02, -2.1547712424197108e-02, -2.3081317200630867e-02, -1.2831352513672649e-02, 2.6694425876734678e-03, 1.2374349063392154e-02, 1.0080975202499228e-02, 3.2000937820879843e-04, -4.8584066984454317e-03, 3.7319205876993832e-03, 2.3366682886858493e-02, 3.9990474678018646e-02, 3.9088852968886305e-02, 1.8511365301032767e-02, -7.9253063604813167e-03, -2.0525827169962409e-02, -1.0613484503384342e-02, 9.6001638620202695e-03, 1.4005289209909406e-02, -1.6623772517222801e-02, -7.5176947269083069e-02, -1.2649037212918582e-01, -1.2785005009999825e-01, -5.9386966029887411e-02, 5.7144488726935457e-02, 1.6633881280155735e-01, 2.1079847965764975e-01, 1.6633881280155735e-01, 5.7144488726935457e-02, -5.9386966029887411e-02, -1.2785005009999825e-01, -1.2649037212918582e-01, -7.5176947269083069e-02, -1.6623772517222801e-02, 1.4005289209909406e-02, 9.6001638620202695e-03, -1.0613484503384342e-02, -2.0525827169962409e-02, -7.9253063604813167e-03, 1.8511365301032767e-02, 3.9088852968886305e-02, 3.9990474678018646e-02, 2.3366682886858493e-02, 3.7319205876993832e-03, -4.8584066984454317e-03, 3.2000937820879843e-04, 1.0080975202499228e-02, 1.2374349063392154e-02, 2.6694425876734678e-03, -1.2831352513672649e-02, -2.3081317200630867e-02, -2.1547712424197108e-02, -1.1126447229936170e-02, -9.5799325715440809e-04, 1.5371957503610802e-03, -3.4913914121199800e-03, -9.2393938919066339e-03, -8.6154694364350588e-03, -3.6398549709864289e-04, 1.0120491742732048e-02, 1.5600386573617498e-02, 1.3031422928204483e-02, 5.7400707533348388e-03, 1.9261748457898115e-04, 4.1097124289880154e-04, 4.8496443047958190e-03, 8.1701258370888031e-03, 6.0966318821772843e-03, -9.0883142585662831e-04, -8.1827848211804884e-03, -1.0900480481099871e-02, -8.0344442826324330e-03, -2.9210596867410843e-03, -1.6143678346355493e-04, -1.6833671816308239e-03, -5.3222239631027140e-03, -6.9553964005030101e-03, -4.1920011112087695e-03, 1.5974940088091486e-03, 6.5370280267915745e-03, 7.5484357920044586e-03, 4.8185763803916034e-03, 1.3983170024624116e-03, 4.2982376594226818e-04, 2.4858008311493679e-03, 5.2510734703655098e-03, 5.6873054220569754e-03, 2.7175907964180819e-03, -1.8844015658019846e-03, -5.0614770814577954e-03, -5.0424933113328938e-03, -2.7015401777454782e-03, -6.2422045469190705e-04, -7.8850406846637741e-04, -2.9132207353127319e-03, -4.8293802357791162e-03, -4.4527074584582117e-03, -1.6009389970032073e-03, 1.8849793135973852e-03, 3.7417961602412893e-03, 3.1602890161225561e-03, 1.3341691376504315e-03, 2.9752002202157490e-04, 1.1215680893589990e-03, 3.0395347122322016e-03, 4.1997688462157992e-03, 3.3223856449474342e-03, 7.9565808915559846e-04, -1.6902711449647998e-03, -2.5945983820879503e-03, -1.7755467135066286e-03, -4.9434851794134783e-04, -2.2792940567773815e-04, -1.3703061862128398e-03, -2.9380959028223771e-03, -3.4788598845584733e-03, -2.3500948837747435e-03, -2.5618521768113443e-04, 1.3797792156491663e-03, 1.6284321950868475e-03, 7.8386710505693315e-04, 1.5404209240295982e-05, 2.9075333523994728e-04, 1.5299945897829833e-03, 2.7080617756874989e-03, 2.7731479415439254e-03, 1.5627338477316834e-03, -7.2462256228287853e-05, -1.0138712539605769e-03, -8.2110499385966440e-04, -5.8087123501295821e-05, 2.5804777572294233e-04, -4.2016236623464517e-04, -1.6842480785212259e-03, -2.5294527601668663e-03, -2.2339066001458349e-03, -9.8730303168041776e-04, 2.6185292432253412e-04, 6.2201321644194470e-04, 1.0838837495431400e-05, -7.4022462424793865e-04, -6.2977102617087764e-04, 7.3935746561684527e-04, 2.5928873392556755e-03, 3.8489975928325247e-03, 3.2681033644075077e-03, 1.5790804472022347e-03, -1.3703337256766852e-03, -2.0535873301705059e-03, -4.1190441269078303e-03, -1.8442833426489450e-03 }
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/20dbbd50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/20dbbd50dd0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/20dbbd50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b041e33a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b041e33a45070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dc/b041e33a45070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f084ede4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f084ede4e50100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f084ede4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f0f0fa5f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f0f0fa5f41070018153483e962c7925e
deleted file mode 100644
index d7dceeb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/dd/f0f0fa5f41070018153483e962c7925e
+++ /dev/null
@@ -1,153 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N]= {0};
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-
- if (ptr == 0)
- ptr = N;
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/308317e4d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/308317e4d80100181ce89bcacea45786
deleted file mode 100644
index 3046578..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/308317e4d80100181ce89bcacea45786
+++ /dev/null
@@ -1,136 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- mono_read_16Bit();
- mono_write_16Bit((short)(wave_out*32767));
-
- unsigned int i;
- short sample_in, sample_out;
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/a05ebee4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/a05ebee4e50100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/de/a05ebee4e50100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/df/30e7a6277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/df/30e7a6277506001814daa3a49c232c18
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/df/30e7a6277506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/703c052edf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/703c052edf0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/703c052edf0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b040ae173f070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b040ae173f070018153483e962c7925e
deleted file mode 100644
index 43d4b9a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b040ae173f070018153483e962c7925e
+++ /dev/null
@@ -1,1755 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Wed Jan 31 11:01:15 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a920
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bd37 000342c9 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002360
- 000043c0 00000620 rts6700.lib : divf.obj (.text:__divf)
- 000049e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00004e60 00000320 intio.obj (.text)
- 00005180 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005460 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 000056a0 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005860 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 00005a00 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00005b80 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00005d00 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00005e40 00000120 : sinit.obj (.text:_call_dtors)
- 00005f60 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006060 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006160 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00006260 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00006340 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006420 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 000064e0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006580 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 000065c0 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006600 00000040 : divf.obj (.text:___isnanf)
- 00006640 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006660 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006680 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000066a0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 000066c0 00000020 : _lock.obj (.text:__register_lock)
- 000066e0 00000020 : _lock.obj (.text:__register_unlock)
- 00006700 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006720 00001764
- 00006720 00000820 intio.obj (.cinit)
- 00006f40 00000564 dsp_bios_cfg.obj (.cinit)
- 000074a4 00000004 --HOLE-- [fill = 0]
- 000074a8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007714 00000004 --HOLE-- [fill = 0]
- 00007718 000001a4 : knl.o67 (.cinit)
- 000078bc 00000004 --HOLE-- [fill = 0]
- 000078c0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 000079ec 00000004 --HOLE-- [fill = 0]
- 000079f0 000000b0 bios.a67 : swi.o67 (.cinit)
- 00007aa0 00000070 : tsk.o67 (.cinit)
- 00007b10 00000060 : tsk_stup.o67 (.cinit)
- 00007b70 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 00007bcc 00000004 --HOLE-- [fill = 0]
- 00007bd0 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00007c24 00000004 --HOLE-- [fill = 0]
- 00007c28 0000004c bios.a67 : rta.o67 (.cinit)
- 00007c74 00000004 --HOLE-- [fill = 0]
- 00007c78 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00007cc4 00000004 --HOLE-- [fill = 0]
- 00007cc8 00000034 bios.a67 : hwi.o67 (.cinit)
- 00007cfc 00000004 --HOLE-- [fill = 0]
- 00007d00 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00007d30 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00007d5c 00000004 --HOLE-- [fill = 0]
- 00007d60 0000002c rts6700.lib : exit.obj (.cinit)
- 00007d8c 00000004 --HOLE-- [fill = 0]
- 00007d90 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00007db4 00000004 --HOLE-- [fill = 0]
- 00007db8 0000001c : sys.o67 (.cinit)
- 00007dd4 00000004 --HOLE-- [fill = 0]
- 00007dd8 0000001c rts6700.lib : _lock.obj (.cinit)
- 00007df4 00000004 --HOLE-- [fill = 0]
- 00007df8 0000001c : atexit.obj (.cinit)
- 00007e14 00000004 --HOLE-- [fill = 0]
- 00007e18 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00007e30 00000010 rts6700.lib : divf.obj (.cinit)
- 00007e40 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00007e4c 00000004 --HOLE-- [fill = 0]
- 00007e50 0000000c : idl_busy.o67 (.cinit)
- 00007e5c 00000004 --HOLE-- [fill = 0]
- 00007e60 0000000c : knl_swit.o67 (.cinit)
- 00007e6c 00000004 --HOLE-- [fill = 0]
- 00007e70 0000000c rts6700.lib : sinit.obj (.cinit)
- 00007e7c 00000004 --HOLE-- [fill = 0]
- 00007e80 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00007e84 00000004
- 00007e84 00000004 --HOLE-- [fill = 0]
-
-.far 0 00007e88 000014c8 UNINITIALIZED
- 00007e88 00000fb8 intio.obj (.far)
- 00008e40 00000188 rts6700.lib : atexit.obj (.far)
- 00008fc8 000000f4 csl6713.lib : csl_irq.obj (.far)
- 000090bc 000000d8 bios.a67 : knl.o67 (.far)
- 00009194 0000005c : tsk.o67 (.far)
- 000091f0 00000054 : obj_init.o67 (.far)
- 00009244 00000050 : tsk_stup.o67 (.far)
- 00009294 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 000092cc 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 000092f4 00000020 bios.a67 : sys.o67 (.far)
- 00009314 00000010 : knl_tick.o67 (.far)
- 00009324 0000000c : utl_putc.o67 (.far)
- 00009330 0000000c rts6700.lib : exit.obj (.far)
- 0000933c 00000008 : _lock.obj (.far)
- 00009344 00000008 : divf.obj (.far)
- 0000934c 00000004 : sinit.obj (.far)
-
-.hst1 0 00009350 00000010 UNINITIALIZED
- 00009350 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009360 00000ea0
- 00009360 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009760 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 00009aa0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 00009da0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 00009ee0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 00009fc0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a040 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a0a0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a100 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a140 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a180 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a1a0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a1c0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a1e0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a200 0000044c UNINITIALIZED
- 0000a200 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a610 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a630 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000a64c 00000010 UNINITIALIZED
- 0000a64c 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000a660 00000420
- 0000a660 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a920 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000a9e0 00000080 : tsk_init.o67 (.sysinit)
- 0000aa60 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000aa80 00000400 UNINITIALIZED
- 0000aa80 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000ae80 00000400 UNINITIALIZED
- 0000ae80 00000400 --HOLE--
-
-.bss 0 0000b280 00000342 UNINITIALIZED
- 0000b280 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b380 000000cc : biosdata.o67 (.bss)
- 0000b44c 0000009c : swi.o67 (.bss)
- 0000b4e8 00000048 : knl.o67 (.bss)
- 0000b530 00000018 : hwi.o67 (.bss)
- 0000b548 00000018 dsp_bios_cfg.obj (.bss)
- 0000b560 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b578 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b588 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b594 00000008 : clk_data.o67 (.bss)
- 0000b59c 00000008 : sys.o67 (.bss)
- 0000b5a4 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b5ac 00000008 intio.obj (.bss)
- 0000b5b4 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b5b8 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b5bc 00000004 : idl_busy.o67 (.bss)
- 0000b5c0 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b5c4 00000200
- 0000b5c4 00000200 --HOLE-- [fill = 00000000]
-
-.hst 0 0000b7c4 0000003c UNINITIALIZED
- 0000b7c4 0000003c dsp_bios_cfg.obj (.hst)
-
-.LOG_system$buf
-* 0 0000b800 00000100 UNINITIALIZED
- 0000b800 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000ba00 000000f9
- 0000ba00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000ba4e 00000002 --HOLE-- [fill = 0]
- 0000ba50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000ba90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bab3 00000022 : utl_doer.o67 (.const)
- 0000bad5 00000003 --HOLE-- [fill = 0]
- 0000bad8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000baf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000baf9 0000003f COPY SECTION
- 0000baf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bafc 000000c8 UNINITIALIZED
- 0000bafc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.tsk 0 0000bbc4 00000060 UNINITIALIZED
- 0000bbc4 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000bc24 00000040
- 0000bc24 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.sts 0 0000bc64 00000030
- 0000bc64 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bc94 0000002c UNINITIALIZED
- 0000bc94 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bcc0 00000028
- 0000bcc0 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000bce8 00000018
- 0000bce8 00000018 dsp_bios_cfg.obj (.log)
-
-.idlcal 0 0000bd00 00000010 UNINITIALIZED
- 0000bd00 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bd10 00000010 UNINITIALIZED
- 0000bd10 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bd20 0000000c
- 0000bd20 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bd24 00000004 : rtdx_mon.o62 (.pinit)
- 0000bd28 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bd2c 0000000c
- 0000bd2c 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bd38 00000008 UNINITIALIZED
- 0000bd38 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b280 $bss
-0000b280 .bss
-00000000 .data
-000043c0 .text
-0000a804 BIOS$$CLKOFF
-0000a7c4 BIOS$$CLKON
-0000a660 BIOS_init
-0000a86c BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bd38 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b3a8 CLK_D_idletime
-0000b3a4 CLK_D_isrhook
-0000b3a0 CLK_D_tabbeg
-0000b39c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b398 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bd3c CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00005a28 GBL_USERINITFXN
-00000001 GBL_boot
-0000bd34 GBL_initdone
-0000ae80 GBL_stackbeg
-0000b27f GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000b7c4 HST_A_TABBEG
-0000b800 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b414 HST_D_chanmask
-0000b418 HST_D_tabbeg
-0000b41c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b540 HWI_D_bss
-0000b544 HWI_D_ccmask
-0000b530 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd00 IDL_A_CALBEG
-0000a64c IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b5bc IDL_D_busyObj
-0000b388 IDL_D_calbeg
-0000b384 IDL_D_calibrate
-0000b380 IDL_D_tabbeg
-0000a658 IDL_END
-0000bd0c IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bc88 IDL_busyObj
-0000bb33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bb2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bc84 IDL_busyObj$stsobj
-0000bb30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000a64c IDL_cpuLoad
-0000bd00 IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bc94 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bc68 KNL_swi$sts
-0000bb09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000baf9 KNL_swi$sts$maxfmt
-0000bc64 KNL_swi$sts$stsobj
-0000bb01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000a650 LNK_dataPump
-0000bd04 LNK_dataPump$
-0000b564 LNK_dspFrameReadyMask
-0000b560 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b56c LNK_readDone
-0000b570 LNK_readFail
-0000b568 LNK_readPend
-00000370 LNK_rrloop
-0000b574 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bce8 LOG_A_TABBEG
-0000bd00 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b38c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bce8 LOG_system
-0000b800 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bafc PIP_A_TABBEG
-0000bbc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b390 PIP_D_tabbeg
-0000b394 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b3d0 PRD_D_cur
-0000b3d4 PRD_D_elapsed
-0000b3d8 PRD_D_prevtim
-0000b3dc PRD_D_scalar
-0000b3e0 PRD_D_swihandle
-0000b3e4 PRD_D_tabbeg
-0000b3e8 PRD_D_tablen
-0000b3ec PRD_D_thook
-0000b3cc PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bd38 PRD_clock
-00000001 QUE$
-0000b3f0 RTA_D_fromHost
-0000b3f8 RTA_D_logval
-0000b408 RTA_D_stsval
-0000b3f4 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000a654 RTA_dispatcher
-0000bd08 RTA_dispatcher$
-00001f28 RTA_execute
-0000b7c8 RTA_fromHost
-00009350 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bafc RTA_fromHost$pipe
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb5c RTA_fromHost$pipe$bbb
-0000b548 RTA_fromHost$pipe$dtab
-0000bb00 RTA_fromHost$pipe$rd
-0000bb30 RTA_fromHost$pipe$wr
-0000b7d0 RTA_fromHost$rtdx
-0000b7e4 RTA_toHost
-0000b900 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bb60 RTA_toHost$pipe
-0000bb90 RTA_toHost$pipe$aaa
-0000bbc0 RTA_toHost$pipe$bbb
-0000b554 RTA_toHost$pipe$dtab
-0000bb64 RTA_toHost$pipe$rd
-0000bb94 RTA_toHost$pipe$wr
-0000b7ec RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bc64 STS_A_TABBEG
-0000bc94 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bc94 SWI_A_TABBEG
-0000bcc0 SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b464 SWI_D_curfxn
-0000b454 SWI_D_curmask
-0000b460 SWI_D_curmbox
-0000b458 SWI_D_curset
-0000b450 SWI_D_execaddr
-0000b46c SWI_D_inswi
-0000b45c SWI_D_lock
-0000b468 SWI_D_rdybeg
-0000b470 SWI_D_rdytab
-0000b44c SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bd10 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bd30 TRC_R_mask
-0000bd2c TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000bbd0 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000aa80 TSK_idle$stack
-0000ae18 TSK_idle$stkptr
-0000bc78 TSK_idle$sts
-0000bb23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bb13 TSK_idle$sts$maxfmt
-0000bc74 TSK_idle$sts$stsobj
-0000bb1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a660 _BIOS_init
-0000a86c _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b594 _CLK_DFLTMICROSECS
-0000b3c8 _CLK_D_countspms
-0000b3bc _CLK_D_dirty
-0000b598 _CLK_D_microseconds
-0000b3c0 _CLK_D_prd
-0000b3c4 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b3ac _CLK_htimeDiv
-0000b3b0 _CLK_htimeMult
-0000b5b4 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b3b4 _CLK_ltimeDiv
-0000b3b8 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00008e18 _Config
-0000b5a4 _DSK6713_AIC23_codeccontrolhandle
-0000b5a8 _DSK6713_AIC23_codecdatahandle
-00005c6c _DSK6713_AIC23_config
-00005180 _DSK6713_AIC23_openCodec
-00005c48 _DSK6713_AIC23_rget
-00005b80 _DSK6713_AIC23_rset
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004acc _DSK6713_rget
-00004ab8 _DSK6713_rset
-0000b5c0 _DSK6713_version
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b424 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b428 _GBL_freq
-00004320 _GBL_getVersion
-0000b420 _GBL_procId
-00005a28 _GBL_setPLLto225MHz
-0000b7c4 _HST_A_TABBEG
-0000b800 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b53c _HWI_D_inhwi
-0000b530 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b278 _HWI_STKBOTTOM
-0000ae80 _HWI_STKTOP
-0000b530 _HWI_data
-00004020 _HWI_disable
-0000b280 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5b0 _H_Codec
-0000bc88 _IDL_busyObj
-0000a64c _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006580 _IRQ_enable
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-000056a0 _IRQ_map
-00006680 _IRQ_nmiEnable
-00004fe8 _ISR_AIC
-0000b4f0 _KNL_alarm
-00003440 _KNL_check
-0000b514 _KNL_curqueue
-0000b504 _KNL_curtask
-0000b50c _KNL_curtime
-0000915c _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b52c _KNL_idlefxn
-0000b4f8 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b518 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b508 _KNL_prevtask
-0000b4fc _KNL_priority
-000090bc _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b500 _KNL_set
-0000b4f4 _KNL_setpri
-0000bc94 _KNL_swi
-0000b510 _KNL_swiptr
-00002cec _KNL_switch
-0000b520 _KNL_tcreatefxn
-0000b524 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b528 _KNL_treadyfxn
-0000b51c _KNL_tswitchfxn
-0000b4e8 _KNL_wFlag
-0000b4ec _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000a650 _LNK_dataPump
-0000b564 _LNK_dspFrameReadyMask
-0000b560 _LNK_dspFrameRequestMask
-0000b56c _LNK_readDone
-0000b570 _LNK_readFail
-0000b568 _LNK_readPend
-0000b574 _LNK_writeFail
-0000bce8 _LOG_A_TABBEG
-0000bd00 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b38c _LOG_D_system
-00003ea0 _LOG_event
-0000bce8 _LOG_system
-00005f60 _MCBSP_open
-00005860 _MCBSP_reset
-00006060 _MCBSP_start
-0000b42c _MEM_D_NUMSEGMENTS
-0000b434 _MEM_D_freelist
-0000b438 _MEM_D_lockaddr
-0000b430 _MEM_D_memtab
-0000b43c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aa60 _OBJ_init
-00009228 _OBJ_segtab
-000091f0 _OBJ_table
-0000bafc _PIP_A_TABBEG
-0000bbc4 _PIP_A_TABEND
-0000b3cc _PRD_D_tick
-0000bd38 _PRD_clock
-0000a654 _RTA_dispatcher
-0000b7c8 _RTA_fromHost
-0000b7e4 _RTA_toHost
-0000a200 _RTDX_Buffer
-0000a60c _RTDX_Buffer_End
-0000a040 _RTDX_Buffer_Initialize
-0000a180 _RTDX_Buffer_Read
-0000a0a0 _RTDX_Buffer_ReadCB
-0000a100 _RTDX_Buffer_Size
-0000a608 _RTDX_Buffer_Start
-0000a1a0 _RTDX_Buffer_Write
-00009760 _RTDX_Buffer_WriteCB
-0000a140 _RTDX_Final_RT_Monitor
-00009fc0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a1e0 _RTDX_Mask_IER
-00009da0 _RTDX_Mon_Queue
-00009360 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a61c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bc64 _STS_A_TABBEG
-0000bc94 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b464 _SWI_D_curfxn
-0000b454 _SWI_D_curmask
-0000b458 _SWI_D_curset
-0000b450 _SWI_D_execaddr
-0000b46c _SWI_D_inswi
-0000b45c _SWI_D_lock
-0000b468 _SWI_D_rdybeg
-0000b44c _SWI_D_runaddr
-0000b44c _SWI_data
-00000e50 _SWI_post
-0000b440 _SYS
-0000b5c4 _SYS_PUTCBEG
-0000b7c3 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-000092f4 _SYS_exitStack
-0000b59c _SYS_exitStackPtr
-0000b5a0 _SYS_exitStackTop
-0000bd30 _TRC_R_mask
-0000b590 _TSK
-00009194 _TSK_ATTRS
-000091b0 _TSK_config
-00002fa0 _TSK_exit
-0000bbd0 _TSK_idle
-0000a9e0 _TSK_init
-0000b588 _TSK_nTasks
-0000b58c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-000091d0 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b448 __HOOK_NUMHOOKS
-0000b444 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-000090b4 __IRQ_dispatchTable
-00008ff0 __IRQ_eventTable
-00006700 __IRQ_hookFetchPacket
-00009074 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-000092c4 __MCBSP_hDev0
-000092c8 __MCBSP_hDev1
-0000926c __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00009244 __TSK_mutex
-00009338 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-000065c0 ___add_dtor
-00008e40 ___atexit_func_id__
-ffffffff ___binit__
-0000b280 ___bss__
-ffffffff ___c_args__
-00006720 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b5c2 ___end__
-00006720 ___etext__
-0000bd20 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009330 __cleanup_ptr
-000043c0 __divf
-00009334 __dtors_ptr
-00006260 __frcmpyf_div
-0000933c __lock
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-0000ae80 __stack
-00005d00 __strasgi
-00009340 __unlock
-00006160 _atexit
-00007e88 _b
-00008650 _buffer
-0000a920 _c_int00
-00005e40 _call_dtors
-0000934c _dtors
-00004f50 _init_HWI
-00004e8c _init_hardware
-00004e60 _main
-00005460 _memcpy
-000063bc _mono_read_16Bit
-00006394 _mono_write_16Bit
-000050a8 _non_circ_fir
-0000b5ac _ptr
-0000b580 _rtdxNullChanCnt
-0000b584 _rtdxNullFuncCnt
-0000a610 _rtdx_buffer_state
-0000a630 _rtdx_mon_state
-00006368 _stereo_read_16Bit
-00006340 _stereo_write_16Bit
-00005a00 _wait500nS
-ffffffff binit
-00006720 cinit
-00000000 edata
-0000b5c2 end
-00006720 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bd20 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divf
-000049e0 _DSK6713_wait
-00004a84 _DSK6713_waitusec
-00004ab8 _DSK6713_rset
-00004acc _DSK6713_rget
-00004b60 _DSK6713_getVersion
-00004bb0 _DSK6713_init
-00004e20 GBL_CLKIN
-00004e60 _main
-00004e8c _init_hardware
-00004f50 _init_HWI
-00004fe8 _ISR_AIC
-000050a8 _non_circ_fir
-00005180 _DSK6713_AIC23_openCodec
-00005205 GBL_A_VERSION
-00005460 _memcpy
-000056a0 _IRQ_map
-00005860 _MCBSP_reset
-00005a00 _wait500nS
-00005a28 GBL_USERINITFXN
-00005a28 _GBL_setPLLto225MHz
-00005b80 _DSK6713_AIC23_rset
-00005c48 _DSK6713_AIC23_rget
-00005c6c _DSK6713_AIC23_config
-00005d00 __strasgi
-00005e40 _call_dtors
-00005f60 _MCBSP_open
-00006060 _MCBSP_start
-00006160 _atexit
-00006260 __frcmpyf_div
-00006340 _stereo_write_16Bit
-00006368 _stereo_read_16Bit
-00006394 _mono_write_16Bit
-000063bc _mono_read_16Bit
-00006580 _IRQ_enable
-000065c0 ___add_dtor
-00006640 _IRQ_globalDisable
-00006660 _IRQ_globalEnable
-00006680 _IRQ_nmiEnable
-000066a0 __nop
-000066c0 __register_lock
-000066e0 __register_unlock
-00006700 __IRQ_hookFetchPacket
-00006720 ___cinit__
-00006720 ___etext__
-00006720 cinit
-00006720 etext
-00007e88 _b
-00008650 _buffer
-00008e18 _Config
-00008e40 ___atexit_func_id__
-00008ff0 __IRQ_eventTable
-00009074 __IRQ_intTable
-000090b4 __IRQ_dispatchTable
-000090bc _KNL_queues
-0000915c _KNL_dummy
-00009194 _TSK_ATTRS
-000091b0 _TSK_config
-000091d0 _TSK_timerSem
-000091f0 _OBJ_table
-00009228 _OBJ_segtab
-00009244 __TSK_mutex
-0000926c __MEM_mutex
-000092c4 __MCBSP_hDev0
-000092c8 __MCBSP_hDev1
-000092f4 _SYS_exitStack
-00009330 __cleanup_ptr
-00009334 __dtors_ptr
-00009338 ___TI_enable_exit_profile_output
-0000933c __lock
-00009340 __unlock
-0000934c _dtors
-00009350 RTA_fromHost$buf
-00009360 _RTDX_Poll
-00009760 _RTDX_Buffer_WriteCB
-00009da0 _RTDX_Mon_Queue
-00009fc0 _RTDX_Init_RT_Monitor
-0000a040 _RTDX_Buffer_Initialize
-0000a0a0 _RTDX_Buffer_ReadCB
-0000a100 _RTDX_Buffer_Size
-0000a140 _RTDX_Final_RT_Monitor
-0000a180 _RTDX_Buffer_Read
-0000a1a0 _RTDX_Buffer_Write
-0000a1e0 _RTDX_Mask_IER
-0000a200 _RTDX_Buffer
-0000a608 _RTDX_Buffer_Start
-0000a60c _RTDX_Buffer_End
-0000a610 _rtdx_buffer_state
-0000a61c _RTDX_writing
-0000a630 _rtdx_mon_state
-0000a64c IDL_A_TABBEG
-0000a64c IDL_cpuLoad
-0000a64c _IDL_cpuLoad
-0000a650 LNK_dataPump
-0000a650 _LNK_dataPump
-0000a654 RTA_dispatcher
-0000a654 _RTA_dispatcher
-0000a658 IDL_END
-0000a660 BIOS_init
-0000a660 _BIOS_init
-0000a7c4 BIOS$$CLKON
-0000a804 BIOS$$CLKOFF
-0000a86c BIOS_start
-0000a86c _BIOS_start
-0000a920 _c_int00
-0000a9e0 _TSK_init
-0000aa60 _OBJ_init
-0000aa80 TSK_idle$stack
-0000ae18 TSK_idle$stkptr
-0000ae80 GBL_stackbeg
-0000ae80 _HWI_STKTOP
-0000ae80 __stack
-0000b278 _HWI_STKBOTTOM
-0000b27f GBL_stackend
-0000b280 $bss
-0000b280 .bss
-0000b280 _HWI_dispatchTab
-0000b280 ___bss__
-0000b380 IDL_D_tabbeg
-0000b384 IDL_D_calibrate
-0000b388 IDL_D_calbeg
-0000b38c LOG_D_system
-0000b38c _LOG_D_system
-0000b390 PIP_D_tabbeg
-0000b394 PIP_D_tablen
-0000b398 CLK_R_time
-0000b39c CLK_D_timefxn
-0000b3a0 CLK_D_tabbeg
-0000b3a4 CLK_D_isrhook
-0000b3a8 CLK_D_idletime
-0000b3ac _CLK_htimeDiv
-0000b3b0 _CLK_htimeMult
-0000b3b4 _CLK_ltimeDiv
-0000b3b8 _CLK_ltimeMult
-0000b3bc _CLK_D_dirty
-0000b3c0 _CLK_D_prd
-0000b3c4 _CLK_D_tddr
-0000b3c8 _CLK_D_countspms
-0000b3cc PRD_D_tick
-0000b3cc _PRD_D_tick
-0000b3d0 PRD_D_cur
-0000b3d4 PRD_D_elapsed
-0000b3d8 PRD_D_prevtim
-0000b3dc PRD_D_scalar
-0000b3e0 PRD_D_swihandle
-0000b3e4 PRD_D_tabbeg
-0000b3e8 PRD_D_tablen
-0000b3ec PRD_D_thook
-0000b3f0 RTA_D_fromHost
-0000b3f4 RTA_D_toHost
-0000b3f8 RTA_D_logval
-0000b408 RTA_D_stsval
-0000b414 HST_D_chanmask
-0000b418 HST_D_tabbeg
-0000b41c HST_D_tabend
-0000b420 _GBL_procId
-0000b424 _GBL_clkIn
-0000b428 _GBL_freq
-0000b42c _MEM_D_NUMSEGMENTS
-0000b430 _MEM_D_memtab
-0000b434 _MEM_D_freelist
-0000b438 _MEM_D_lockaddr
-0000b43c _MEM_D_unlockaddr
-0000b440 _SYS
-0000b444 __HOOK_knlId
-0000b448 __HOOK_NUMHOOKS
-0000b44c SWI_D_runaddr
-0000b44c _SWI_D_runaddr
-0000b44c _SWI_data
-0000b450 SWI_D_execaddr
-0000b450 _SWI_D_execaddr
-0000b454 SWI_D_curmask
-0000b454 _SWI_D_curmask
-0000b458 SWI_D_curset
-0000b458 _SWI_D_curset
-0000b45c SWI_D_lock
-0000b45c _SWI_D_lock
-0000b460 SWI_D_curmbox
-0000b464 SWI_D_curfxn
-0000b464 _SWI_D_curfxn
-0000b468 SWI_D_rdybeg
-0000b468 _SWI_D_rdybeg
-0000b46c SWI_D_inswi
-0000b46c _SWI_D_inswi
-0000b470 SWI_D_rdytab
-0000b4e8 _KNL_wFlag
-0000b4ec _KNL_wList
-0000b4f0 _KNL_alarm
-0000b4f4 _KNL_setpri
-0000b4f8 _KNL_inactive
-0000b4fc _KNL_priority
-0000b500 _KNL_set
-0000b504 _KNL_curtask
-0000b508 _KNL_prevtask
-0000b50c _KNL_curtime
-0000b510 _KNL_swiptr
-0000b514 _KNL_curqueue
-0000b518 _KNL_maxqueue
-0000b51c _KNL_tswitchfxn
-0000b520 _KNL_tcreatefxn
-0000b524 _KNL_tdeletefxn
-0000b528 _KNL_treadyfxn
-0000b52c _KNL_idlefxn
-0000b530 HWI_D_spsave
-0000b530 _HWI_D_spsave
-0000b530 _HWI_data
-0000b53c _HWI_D_inhwi
-0000b540 HWI_D_bss
-0000b544 HWI_D_ccmask
-0000b548 RTA_fromHost$pipe$dtab
-0000b554 RTA_toHost$pipe$dtab
-0000b560 LNK_dspFrameRequestMask
-0000b560 _LNK_dspFrameRequestMask
-0000b564 LNK_dspFrameReadyMask
-0000b564 _LNK_dspFrameReadyMask
-0000b568 LNK_readPend
-0000b568 _LNK_readPend
-0000b56c LNK_readDone
-0000b56c _LNK_readDone
-0000b570 LNK_readFail
-0000b570 _LNK_readFail
-0000b574 LNK_writeFail
-0000b574 _LNK_writeFail
-0000b580 _rtdxNullChanCnt
-0000b584 _rtdxNullFuncCnt
-0000b588 _TSK_nTasks
-0000b58c _TSK_pid
-0000b590 _TSK
-0000b594 _CLK_DFLTMICROSECS
-0000b598 _CLK_D_microseconds
-0000b59c _SYS_exitStackPtr
-0000b5a0 _SYS_exitStackTop
-0000b5a4 _DSK6713_AIC23_codeccontrolhandle
-0000b5a8 _DSK6713_AIC23_codecdatahandle
-0000b5ac _ptr
-0000b5b0 _H_Codec
-0000b5b4 _CLK_htimePerLtime
-0000b5bc IDL_D_busyObj
-0000b5c0 _DSK6713_version
-0000b5c2 ___end__
-0000b5c2 end
-0000b5c4 _SYS_PUTCBEG
-0000b7c3 _SYS_PUTCEND
-0000b7c4 HST_A_TABBEG
-0000b7c4 _HST_A_TABBEG
-0000b7c8 RTA_fromHost
-0000b7c8 _RTA_fromHost
-0000b7d0 RTA_fromHost$rtdx
-0000b7e4 RTA_toHost
-0000b7e4 _RTA_toHost
-0000b7ec RTA_toHost$rtdx
-0000b800 HST_A_TABEND
-0000b800 LOG_system$buf
-0000b800 _HST_A_TABEND
-0000b900 RTA_toHost$buf
-0000baf9 KNL_swi$sts$maxfmt
-0000bafc PIP_A_TABBEG
-0000bafc RTA_fromHost$pipe
-0000bafc _PIP_A_TABBEG
-0000bb00 RTA_fromHost$pipe$rd
-0000bb01 KNL_swi$sts$sumfmt
-0000bb09 KNL_swi$sts$avgfmt
-0000bb13 TSK_idle$sts$maxfmt
-0000bb1b TSK_idle$sts$sumfmt
-0000bb23 TSK_idle$sts$avgfmt
-0000bb2c RTA_fromHost$pipe$aaa
-0000bb2d IDL_busyObj$maxfmt
-0000bb30 IDL_busyObj$sumfmt
-0000bb30 RTA_fromHost$pipe$wr
-0000bb33 IDL_busyObj$avgfmt
-0000bb5c RTA_fromHost$pipe$bbb
-0000bb60 RTA_toHost$pipe
-0000bb64 RTA_toHost$pipe$rd
-0000bb90 RTA_toHost$pipe$aaa
-0000bb94 RTA_toHost$pipe$wr
-0000bbc0 RTA_toHost$pipe$bbb
-0000bbc4 PIP_A_TABEND
-0000bbc4 _PIP_A_TABEND
-0000bbd0 TSK_idle
-0000bbd0 _TSK_idle
-0000bc64 KNL_swi$sts$stsobj
-0000bc64 STS_A_TABBEG
-0000bc64 _STS_A_TABBEG
-0000bc68 KNL_swi$sts
-0000bc74 TSK_idle$sts$stsobj
-0000bc78 TSK_idle$sts
-0000bc84 IDL_busyObj$stsobj
-0000bc88 IDL_busyObj
-0000bc88 _IDL_busyObj
-0000bc94 KNL_swi
-0000bc94 STS_A_TABEND
-0000bc94 SWI_A_TABBEG
-0000bc94 _KNL_swi
-0000bc94 _STS_A_TABEND
-0000bcc0 SWI_A_TABEND
-0000bce8 LOG_A_TABBEG
-0000bce8 LOG_system
-0000bce8 _LOG_A_TABBEG
-0000bce8 _LOG_system
-0000bd00 IDL_A_CALBEG
-0000bd00 IDL_cpuLoad$
-0000bd00 LOG_A_TABEND
-0000bd00 _LOG_A_TABEND
-0000bd04 LNK_dataPump$
-0000bd08 RTA_dispatcher$
-0000bd0c IDL_END$
-0000bd10 SYS$config
-0000bd20 ___pinit__
-0000bd20 pinit
-0000bd2c TRC_cinit
-0000bd30 TRC_R_mask
-0000bd30 _TRC_R_mask
-0000bd34 GBL_initdone
-0000bd38 CLK_A_TABBEG
-0000bd38 PRD_clock
-0000bd38 _PRD_clock
-0000bd3c CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[718 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b0a3e2f244070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b0a3e2f244070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/b0a3e2f244070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/d085fc98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/d085fc98d80100181ce89bcacea45786
deleted file mode 100644
index 7bbbb0a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/d085fc98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,1789 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Tue Jan 23 11:15:05 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a9a0
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bdcf 00034231 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000036a0
- 000043c0 00000900 rts6700.lib : divd.obj (.text:__divd)
- 00004cc0 00000620 : divf.obj (.text:__divf)
- 000052e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00005760 00000380 rts6700.lib : frcmpyd_div.obj (.text:__frcmpyd_div)
- 00005ae0 00000360 intio.obj (.text)
- 00005e40 00000320 rts6700.lib : sin.obj (.text:_sin)
- 00006160 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00006440 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00006680 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00006840 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 000069e0 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00006b60 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00006ce0 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00006e20 00000120 : sinit.obj (.text:_call_dtors)
- 00006f40 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00007040 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00007140 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00007240 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00007320 000000e0 : round.obj (.text:__nround)
- 00007400 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 000074e0 000000c0 rts6700.lib : modf.obj (.text:_modf)
- 000075a0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00007660 000000a0 rts6700.lib : fixfu.obj (.text:__fixfu)
- 00007700 000000a0 : mpyll.obj (.text:__mpyll)
- 000077a0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00007840 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00007880 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 000078c0 00000040 : divd.obj (.text:___isnan)
- 00007900 00000040 : divf.obj (.text:___isnanf)
- 00007940 00000040 : trunc.obj (.text:__trunc)
- 00007980 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000079a0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000079c0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000079e0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00007a00 00000020 : _lock.obj (.text:__register_lock)
- 00007a20 00000020 : _lock.obj (.text:__register_unlock)
- 00007a40 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00007a60 00000ffc
- 00007a60 00000564 dsp_bios_cfg.obj (.cinit)
- 00007fc4 00000004 --HOLE-- [fill = 0]
- 00007fc8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00008234 00000004 --HOLE-- [fill = 0]
- 00008238 000001a4 : knl.o67 (.cinit)
- 000083dc 00000004 --HOLE-- [fill = 0]
- 000083e0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 0000850c 00000004 --HOLE-- [fill = 0]
- 00008510 000000b0 bios.a67 : swi.o67 (.cinit)
- 000085c0 00000070 : tsk.o67 (.cinit)
- 00008630 00000060 : tsk_stup.o67 (.cinit)
- 00008690 0000005c intio.obj (.cinit)
- 000086ec 00000004 --HOLE-- [fill = 0]
- 000086f0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 0000874c 00000004 --HOLE-- [fill = 0]
- 00008750 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 000087a4 00000004 --HOLE-- [fill = 0]
- 000087a8 0000004c bios.a67 : rta.o67 (.cinit)
- 000087f4 00000004 --HOLE-- [fill = 0]
- 000087f8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00008844 00000004 --HOLE-- [fill = 0]
- 00008848 00000048 rts6700.lib : sin.obj (.cinit)
- 00008890 00000034 bios.a67 : hwi.o67 (.cinit)
- 000088c4 00000004 --HOLE-- [fill = 0]
- 000088c8 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 000088f8 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00008924 00000004 --HOLE-- [fill = 0]
- 00008928 0000002c rts6700.lib : exit.obj (.cinit)
- 00008954 00000004 --HOLE-- [fill = 0]
- 00008958 00000024 bios.a67 : obj_init.o67 (.cinit)
- 0000897c 00000004 --HOLE-- [fill = 0]
- 00008980 0000001c : sys.o67 (.cinit)
- 0000899c 00000004 --HOLE-- [fill = 0]
- 000089a0 0000001c rts6700.lib : _lock.obj (.cinit)
- 000089bc 00000004 --HOLE-- [fill = 0]
- 000089c0 0000001c : atexit.obj (.cinit)
- 000089dc 00000004 --HOLE-- [fill = 0]
- 000089e0 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 000089f8 00000010 rts6700.lib : divd.obj (.cinit)
- 00008a08 00000010 : divf.obj (.cinit)
- 00008a18 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00008a24 00000004 --HOLE-- [fill = 0]
- 00008a28 0000000c : idl_busy.o67 (.cinit)
- 00008a34 00000004 --HOLE-- [fill = 0]
- 00008a38 0000000c : knl_swit.o67 (.cinit)
- 00008a44 00000004 --HOLE-- [fill = 0]
- 00008a48 0000000c rts6700.lib : sinit.obj (.cinit)
- 00008a54 00000004 --HOLE-- [fill = 0]
- 00008a58 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00008a5c 00000004
- 00008a5c 00000004 --HOLE-- [fill = 0]
-
-.rtdx_text
-* 0 00008a60 00000ea0
- 00008a60 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00008e60 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 000091a0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 000094a0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 000095e0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 000096c0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 00009740 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 000097a0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 00009800 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 00009840 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 00009880 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 000098a0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 000098c0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 000098e0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.far 0 00009900 00000980 UNINITIALIZED
- 00009900 00000428 intio.obj (.far)
- 00009d28 00000188 rts6700.lib : atexit.obj (.far)
- 00009eb0 000000f4 csl6713.lib : csl_irq.obj (.far)
- 00009fa4 000000d8 bios.a67 : knl.o67 (.far)
- 0000a07c 0000005c : tsk.o67 (.far)
- 0000a0d8 00000054 : obj_init.o67 (.far)
- 0000a12c 00000050 : tsk_stup.o67 (.far)
- 0000a17c 00000004 rts6700.lib : sinit.obj (.far)
- 0000a180 00000040 : sin.obj (.far)
- 0000a1c0 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 0000a1f8 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 0000a220 00000020 bios.a67 : sys.o67 (.far)
- 0000a240 00000010 : knl_tick.o67 (.far)
- 0000a250 0000000c : utl_putc.o67 (.far)
- 0000a25c 0000000c rts6700.lib : exit.obj (.far)
- 0000a268 00000008 : _lock.obj (.far)
- 0000a270 00000008 : divd.obj (.far)
- 0000a278 00000008 : divf.obj (.far)
-
-.rtdx_data
-* 0 0000a280 0000044c UNINITIALIZED
- 0000a280 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a690 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a6b0 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 0000a6cc 00000010 UNINITIALIZED
- 0000a6cc 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 0000a6e0 00000420
- 0000a6e0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a9a0 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000aa60 00000080 : tsk_init.o67 (.sysinit)
- 0000aae0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000ab00 00000400 UNINITIALIZED
- 0000ab00 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000af00 00000400 UNINITIALIZED
- 0000af00 00000400 --HOLE--
-
-.bss 0 0000b300 0000034a UNINITIALIZED
- 0000b300 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b400 000000cc : biosdata.o67 (.bss)
- 0000b4cc 0000009c : swi.o67 (.bss)
- 0000b568 00000048 : knl.o67 (.bss)
- 0000b5b0 00000018 : hwi.o67 (.bss)
- 0000b5c8 00000018 dsp_bios_cfg.obj (.bss)
- 0000b5e0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b5f8 00000010 intio.obj (.bss)
- 0000b608 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b618 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b624 00000008 : clk_data.o67 (.bss)
- 0000b62c 00000008 : sys.o67 (.bss)
- 0000b634 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b63c 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b640 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b644 00000004 : idl_busy.o67 (.bss)
- 0000b648 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b64c 00000200
- 0000b64c 00000200 --HOLE-- [fill = 00000000]
-
-.tsk 0 0000b84c 00000060 UNINITIALIZED
- 0000b84c 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000b8ac 00000040
- 0000b8ac 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.idl 0 0000b8ec 00000010 UNINITIALIZED
- 0000b8ec 00000010 dsp_bios_cfg.obj (.idl)
-
-.LOG_system$buf
-* 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000ba00 00000100 UNINITIALIZED
- 0000ba00 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000bb00 000000f9
- 0000bb00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000bb4e 00000002 --HOLE-- [fill = 0]
- 0000bb50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000bb90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bbb3 00000022 : utl_doer.o67 (.const)
- 0000bbd5 00000003 --HOLE-- [fill = 0]
- 0000bbd8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000bbf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000bbf9 0000003f COPY SECTION
- 0000bbf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bbfc 000000c8 UNINITIALIZED
- 0000bbfc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.hst 0 0000bcc4 0000003c UNINITIALIZED
- 0000bcc4 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bd00 00000030
- 0000bd00 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bd30 0000002c UNINITIALIZED
- 0000bd30 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bd5c 00000028
- 0000bd5c 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000bd84 00000018
- 0000bd84 00000018 dsp_bios_cfg.obj (.log)
-
-.idlcal 0 0000bd9c 00000010 UNINITIALIZED
- 0000bd9c 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bdac 00000010 UNINITIALIZED
- 0000bdac 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bdbc 0000000c
- 0000bdbc 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bdc0 00000004 : rtdx_mon.o62 (.pinit)
- 0000bdc4 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bdc8 0000000c
- 0000bdc8 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bdd4 00000008 UNINITIALIZED
- 0000bdd4 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b300 $bss
-0000b300 .bss
-00000000 .data
-000043c0 .text
-0000a884 BIOS$$CLKOFF
-0000a844 BIOS$$CLKON
-0000a6e0 BIOS_init
-0000a8ec BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bdd4 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b428 CLK_D_idletime
-0000b424 CLK_D_isrhook
-0000b420 CLK_D_tabbeg
-0000b41c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b418 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bdd8 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00006a08 GBL_USERINITFXN
-00000001 GBL_boot
-0000bdd0 GBL_initdone
-0000af00 GBL_stackbeg
-0000b2ff GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bcc4 HST_A_TABBEG
-0000bd00 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b494 HST_D_chanmask
-0000b498 HST_D_tabbeg
-0000b49c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b5c0 HWI_D_bss
-0000b5c4 HWI_D_ccmask
-0000b5b0 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718ae HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd9c IDL_A_CALBEG
-0000b8ec IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b644 IDL_D_busyObj
-0000b408 IDL_D_calbeg
-0000b404 IDL_D_calibrate
-0000b400 IDL_D_tabbeg
-0000b8f8 IDL_END
-0000bda8 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bd24 IDL_busyObj
-0000bc33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bc2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bd20 IDL_busyObj$stsobj
-0000bc30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000b8ec IDL_cpuLoad
-0000bd9c IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bd30 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bd04 KNL_swi$sts
-0000bc09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000bbf9 KNL_swi$sts$maxfmt
-0000bd00 KNL_swi$sts$stsobj
-0000bc01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000b8f0 LNK_dataPump
-0000bda0 LNK_dataPump$
-0000b5e4 LNK_dspFrameReadyMask
-0000b5e0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b5ec LNK_readDone
-0000b5f0 LNK_readFail
-0000b5e8 LNK_readPend
-00000370 LNK_rrloop
-0000b5f4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bd84 LOG_A_TABBEG
-0000bd9c LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b40c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bd84 LOG_system
-0000b900 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bbfc PIP_A_TABBEG
-0000bcc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b410 PIP_D_tabbeg
-0000b414 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b450 PRD_D_cur
-0000b454 PRD_D_elapsed
-0000b458 PRD_D_prevtim
-0000b45c PRD_D_scalar
-0000b460 PRD_D_swihandle
-0000b464 PRD_D_tabbeg
-0000b468 PRD_D_tablen
-0000b46c PRD_D_thook
-0000b44c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bdd4 PRD_clock
-00000001 QUE$
-0000b470 RTA_D_fromHost
-0000b478 RTA_D_logval
-0000b488 RTA_D_stsval
-0000b474 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000b8f4 RTA_dispatcher
-0000bda4 RTA_dispatcher$
-00001f28 RTA_execute
-0000bcc8 RTA_fromHost
-0000a6cc RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bbfc RTA_fromHost$pipe
-0000bc2c RTA_fromHost$pipe$aaa
-0000bc5c RTA_fromHost$pipe$bbb
-0000b5c8 RTA_fromHost$pipe$dtab
-0000bc00 RTA_fromHost$pipe$rd
-0000bc30 RTA_fromHost$pipe$wr
-0000bcd0 RTA_fromHost$rtdx
-0000bce4 RTA_toHost
-0000ba00 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bc60 RTA_toHost$pipe
-0000bc90 RTA_toHost$pipe$aaa
-0000bcc0 RTA_toHost$pipe$bbb
-0000b5d4 RTA_toHost$pipe$dtab
-0000bc64 RTA_toHost$pipe$rd
-0000bc94 RTA_toHost$pipe$wr
-0000bcec RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bd00 STS_A_TABBEG
-0000bd30 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bd30 SWI_A_TABBEG
-0000bd5c SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b4e4 SWI_D_curfxn
-0000b4d4 SWI_D_curmask
-0000b4e0 SWI_D_curmbox
-0000b4d8 SWI_D_curset
-0000b4d0 SWI_D_execaddr
-0000b4ec SWI_D_inswi
-0000b4dc SWI_D_lock
-0000b4e8 SWI_D_rdybeg
-0000b4f0 SWI_D_rdytab
-0000b4cc SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bdac SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bdcc TRC_R_mask
-0000bdc8 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000b858 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000ab00 TSK_idle$stack
-0000ae98 TSK_idle$stkptr
-0000bd14 TSK_idle$sts
-0000bc23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bc13 TSK_idle$sts$maxfmt
-0000bd10 TSK_idle$sts$stsobj
-0000bc1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a6e0 _BIOS_init
-0000a8ec _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b624 _CLK_DFLTMICROSECS
-0000b448 _CLK_D_countspms
-0000b43c _CLK_D_dirty
-0000b628 _CLK_D_microseconds
-0000b440 _CLK_D_prd
-0000b444 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b42c _CLK_htimeDiv
-0000b430 _CLK_htimeMult
-0000b63c _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b434 _CLK_ltimeDiv
-0000b438 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00009900 _Config
-0000b634 _DSK6713_AIC23_codeccontrolhandle
-0000b638 _DSK6713_AIC23_codecdatahandle
-00006c4c _DSK6713_AIC23_config
-00006160 _DSK6713_AIC23_openCodec
-00006c28 _DSK6713_AIC23_rget
-00006b60 _DSK6713_AIC23_rset
-00005460 _DSK6713_getVersion
-000054b0 _DSK6713_init
-000053cc _DSK6713_rget
-000053b8 _DSK6713_rset
-0000b648 _DSK6713_version
-000052e0 _DSK6713_wait
-00005384 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b4a4 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b4a8 _GBL_freq
-00004320 _GBL_getVersion
-0000b4a0 _GBL_procId
-00006a08 _GBL_setPLLto225MHz
-0000bcc4 _HST_A_TABBEG
-0000bd00 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b5bc _HWI_D_inhwi
-0000b5b0 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b2f8 _HWI_STKBOTTOM
-0000af00 _HWI_STKTOP
-0000b5b0 _HWI_data
-00004020 _HWI_disable
-0000b300 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5f8 _H_Codec
-0000bd24 _IDL_busyObj
-0000b8ec _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00007840 _IRQ_enable
-00007980 _IRQ_globalDisable
-000079a0 _IRQ_globalEnable
-00006680 _IRQ_map
-000079c0 _IRQ_nmiEnable
-00005dc0 _ISR_AIC
-0000b570 _KNL_alarm
-00003440 _KNL_check
-0000b594 _KNL_curqueue
-0000b584 _KNL_curtask
-0000b58c _KNL_curtime
-0000a044 _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b5ac _KNL_idlefxn
-0000b578 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b598 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b588 _KNL_prevtask
-0000b57c _KNL_priority
-00009fa4 _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b580 _KNL_set
-0000b574 _KNL_setpri
-0000bd30 _KNL_swi
-0000b590 _KNL_swiptr
-00002cec _KNL_switch
-0000b5a0 _KNL_tcreatefxn
-0000b5a4 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b5a8 _KNL_treadyfxn
-0000b59c _KNL_tswitchfxn
-0000b568 _KNL_wFlag
-0000b56c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000b8f0 _LNK_dataPump
-0000b5e4 _LNK_dspFrameReadyMask
-0000b5e0 _LNK_dspFrameRequestMask
-0000b5ec _LNK_readDone
-0000b5f0 _LNK_readFail
-0000b5e8 _LNK_readPend
-0000b5f4 _LNK_writeFail
-0000bd84 _LOG_A_TABBEG
-0000bd9c _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b40c _LOG_D_system
-00003ea0 _LOG_event
-0000bd84 _LOG_system
-00006f40 _MCBSP_open
-00006840 _MCBSP_reset
-00007040 _MCBSP_start
-0000b4ac _MEM_D_NUMSEGMENTS
-0000b4b4 _MEM_D_freelist
-0000b4b8 _MEM_D_lockaddr
-0000b4b0 _MEM_D_memtab
-0000b4bc _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aae0 _OBJ_init
-0000a110 _OBJ_segtab
-0000a0d8 _OBJ_table
-0000bbfc _PIP_A_TABBEG
-0000bcc4 _PIP_A_TABEND
-0000b44c _PRD_D_tick
-0000bdd4 _PRD_clock
-0000b8f4 _RTA_dispatcher
-0000bcc8 _RTA_fromHost
-0000bce4 _RTA_toHost
-0000a280 _RTDX_Buffer
-0000a68c _RTDX_Buffer_End
-00009740 _RTDX_Buffer_Initialize
-00009880 _RTDX_Buffer_Read
-000097a0 _RTDX_Buffer_ReadCB
-00009800 _RTDX_Buffer_Size
-0000a688 _RTDX_Buffer_Start
-000098a0 _RTDX_Buffer_Write
-00008e60 _RTDX_Buffer_WriteCB
-00009840 _RTDX_Final_RT_Monitor
-000096c0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-000098e0 _RTDX_Mask_IER
-000094a0 _RTDX_Mon_Queue
-00008a60 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a69c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bd00 _STS_A_TABBEG
-0000bd30 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b4e4 _SWI_D_curfxn
-0000b4d4 _SWI_D_curmask
-0000b4d8 _SWI_D_curset
-0000b4d0 _SWI_D_execaddr
-0000b4ec _SWI_D_inswi
-0000b4dc _SWI_D_lock
-0000b4e8 _SWI_D_rdybeg
-0000b4cc _SWI_D_runaddr
-0000b4cc _SWI_data
-00000e50 _SWI_post
-0000b4c0 _SYS
-0000b64c _SYS_PUTCBEG
-0000b84b _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-0000a220 _SYS_exitStack
-0000b62c _SYS_exitStackPtr
-0000b630 _SYS_exitStackTop
-0000bdcc _TRC_R_mask
-0000b620 _TSK
-0000a07c _TSK_ATTRS
-0000a098 _TSK_config
-00002fa0 _TSK_exit
-0000b858 _TSK_idle
-0000aa60 _TSK_init
-0000b618 _TSK_nTasks
-0000b61c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-0000a0b8 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b4c8 __HOOK_NUMHOOKS
-0000b4c4 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009f9c __IRQ_dispatchTable
-00009ed8 __IRQ_eventTable
-00007a40 __IRQ_hookFetchPacket
-00009f5c __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-0000a1f0 __MCBSP_hDev0
-0000a1f4 __MCBSP_hDev1
-0000a154 __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-0000a12c __TSK_mutex
-0000a264 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00007880 ___add_dtor
-00009d28 ___atexit_func_id__
-ffffffff ___binit__
-0000b300 ___bss__
-ffffffff ___c_args__
-00007a60 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b64a ___end__
-00007a60 ___etext__
-0000bdbc ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-0000a25c __cleanup_ptr
-000043c0 __divd
-00004cc0 __divf
-0000a260 __dtors_ptr
-00007660 __fixfu
-00005760 __frcmpyd_div
-00007240 __frcmpyf_div
-0000a268 __lock
-00007700 __mpyll
-000079e0 __nop
-00007320 __nround
-00007a00 __register_lock
-00007a20 __register_unlock
-0000af00 __stack
-00006ce0 __strasgi
-00007940 __trunc
-0000a26c __unlock
-00007140 _atexit
-0000a9a0 _c_int00
-00006e20 _call_dtors
-0000a17c _dtors
-00005be0 _init_HWI
-00005b1c _init_hardware
-00005ae0 _main
-00006440 _memcpy
-000074e0 _modf
-0000747c _mono_read_16Bit
-00007454 _mono_write_16Bit
-0000b610 _rtdxNullChanCnt
-0000b614 _rtdxNullFuncCnt
-0000a690 _rtdx_buffer_state
-0000a6b0 _rtdx_mon_state
-0000b5fc _sampling_freq
-00005e40 _sin
-0000b600 _sine_freq
-0000b604 _sine_index
-00005c78 _sine_init
-00005d28 _sinegen
-00007428 _stereo_read_16Bit
-00007400 _stereo_write_16Bit
-00009928 _table
-000069e0 _wait500nS
-ffffffff binit
-00007a60 cinit
-00000000 edata
-0000b64a end
-00007a60 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bdbc pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divd
-00004cc0 __divf
-00004e20 GBL_CLKIN
-00005205 GBL_A_VERSION
-000052e0 _DSK6713_wait
-00005384 _DSK6713_waitusec
-000053b8 _DSK6713_rset
-000053cc _DSK6713_rget
-00005460 _DSK6713_getVersion
-000054b0 _DSK6713_init
-00005760 __frcmpyd_div
-00005ae0 _main
-00005b1c _init_hardware
-00005be0 _init_HWI
-00005c78 _sine_init
-00005d28 _sinegen
-00005dc0 _ISR_AIC
-00005e40 _sin
-00006160 _DSK6713_AIC23_openCodec
-00006440 _memcpy
-00006680 _IRQ_map
-00006840 _MCBSP_reset
-000069e0 _wait500nS
-00006a08 GBL_USERINITFXN
-00006a08 _GBL_setPLLto225MHz
-00006b60 _DSK6713_AIC23_rset
-00006c28 _DSK6713_AIC23_rget
-00006c4c _DSK6713_AIC23_config
-00006ce0 __strasgi
-00006e20 _call_dtors
-00006f40 _MCBSP_open
-00007040 _MCBSP_start
-00007140 _atexit
-00007240 __frcmpyf_div
-00007320 __nround
-00007400 _stereo_write_16Bit
-00007428 _stereo_read_16Bit
-00007454 _mono_write_16Bit
-0000747c _mono_read_16Bit
-000074e0 _modf
-00007660 __fixfu
-00007700 __mpyll
-00007840 _IRQ_enable
-00007880 ___add_dtor
-00007940 __trunc
-00007980 _IRQ_globalDisable
-000079a0 _IRQ_globalEnable
-000079c0 _IRQ_nmiEnable
-000079e0 __nop
-00007a00 __register_lock
-00007a20 __register_unlock
-00007a40 __IRQ_hookFetchPacket
-00007a60 ___cinit__
-00007a60 ___etext__
-00007a60 cinit
-00007a60 etext
-00008a60 _RTDX_Poll
-00008e60 _RTDX_Buffer_WriteCB
-000094a0 _RTDX_Mon_Queue
-000096c0 _RTDX_Init_RT_Monitor
-00009740 _RTDX_Buffer_Initialize
-000097a0 _RTDX_Buffer_ReadCB
-00009800 _RTDX_Buffer_Size
-00009840 _RTDX_Final_RT_Monitor
-00009880 _RTDX_Buffer_Read
-000098a0 _RTDX_Buffer_Write
-000098e0 _RTDX_Mask_IER
-00009900 _Config
-00009928 _table
-00009d28 ___atexit_func_id__
-00009ed8 __IRQ_eventTable
-00009f5c __IRQ_intTable
-00009f9c __IRQ_dispatchTable
-00009fa4 _KNL_queues
-0000a044 _KNL_dummy
-0000a07c _TSK_ATTRS
-0000a098 _TSK_config
-0000a0b8 _TSK_timerSem
-0000a0d8 _OBJ_table
-0000a110 _OBJ_segtab
-0000a12c __TSK_mutex
-0000a154 __MEM_mutex
-0000a17c _dtors
-0000a1f0 __MCBSP_hDev0
-0000a1f4 __MCBSP_hDev1
-0000a220 _SYS_exitStack
-0000a25c __cleanup_ptr
-0000a260 __dtors_ptr
-0000a264 ___TI_enable_exit_profile_output
-0000a268 __lock
-0000a26c __unlock
-0000a280 _RTDX_Buffer
-0000a688 _RTDX_Buffer_Start
-0000a68c _RTDX_Buffer_End
-0000a690 _rtdx_buffer_state
-0000a69c _RTDX_writing
-0000a6b0 _rtdx_mon_state
-0000a6cc RTA_fromHost$buf
-0000a6e0 BIOS_init
-0000a6e0 _BIOS_init
-0000a844 BIOS$$CLKON
-0000a884 BIOS$$CLKOFF
-0000a8ec BIOS_start
-0000a8ec _BIOS_start
-0000a9a0 _c_int00
-0000aa60 _TSK_init
-0000aae0 _OBJ_init
-0000ab00 TSK_idle$stack
-0000ae98 TSK_idle$stkptr
-0000af00 GBL_stackbeg
-0000af00 _HWI_STKTOP
-0000af00 __stack
-0000b2f8 _HWI_STKBOTTOM
-0000b2ff GBL_stackend
-0000b300 $bss
-0000b300 .bss
-0000b300 _HWI_dispatchTab
-0000b300 ___bss__
-0000b400 IDL_D_tabbeg
-0000b404 IDL_D_calibrate
-0000b408 IDL_D_calbeg
-0000b40c LOG_D_system
-0000b40c _LOG_D_system
-0000b410 PIP_D_tabbeg
-0000b414 PIP_D_tablen
-0000b418 CLK_R_time
-0000b41c CLK_D_timefxn
-0000b420 CLK_D_tabbeg
-0000b424 CLK_D_isrhook
-0000b428 CLK_D_idletime
-0000b42c _CLK_htimeDiv
-0000b430 _CLK_htimeMult
-0000b434 _CLK_ltimeDiv
-0000b438 _CLK_ltimeMult
-0000b43c _CLK_D_dirty
-0000b440 _CLK_D_prd
-0000b444 _CLK_D_tddr
-0000b448 _CLK_D_countspms
-0000b44c PRD_D_tick
-0000b44c _PRD_D_tick
-0000b450 PRD_D_cur
-0000b454 PRD_D_elapsed
-0000b458 PRD_D_prevtim
-0000b45c PRD_D_scalar
-0000b460 PRD_D_swihandle
-0000b464 PRD_D_tabbeg
-0000b468 PRD_D_tablen
-0000b46c PRD_D_thook
-0000b470 RTA_D_fromHost
-0000b474 RTA_D_toHost
-0000b478 RTA_D_logval
-0000b488 RTA_D_stsval
-0000b494 HST_D_chanmask
-0000b498 HST_D_tabbeg
-0000b49c HST_D_tabend
-0000b4a0 _GBL_procId
-0000b4a4 _GBL_clkIn
-0000b4a8 _GBL_freq
-0000b4ac _MEM_D_NUMSEGMENTS
-0000b4b0 _MEM_D_memtab
-0000b4b4 _MEM_D_freelist
-0000b4b8 _MEM_D_lockaddr
-0000b4bc _MEM_D_unlockaddr
-0000b4c0 _SYS
-0000b4c4 __HOOK_knlId
-0000b4c8 __HOOK_NUMHOOKS
-0000b4cc SWI_D_runaddr
-0000b4cc _SWI_D_runaddr
-0000b4cc _SWI_data
-0000b4d0 SWI_D_execaddr
-0000b4d0 _SWI_D_execaddr
-0000b4d4 SWI_D_curmask
-0000b4d4 _SWI_D_curmask
-0000b4d8 SWI_D_curset
-0000b4d8 _SWI_D_curset
-0000b4dc SWI_D_lock
-0000b4dc _SWI_D_lock
-0000b4e0 SWI_D_curmbox
-0000b4e4 SWI_D_curfxn
-0000b4e4 _SWI_D_curfxn
-0000b4e8 SWI_D_rdybeg
-0000b4e8 _SWI_D_rdybeg
-0000b4ec SWI_D_inswi
-0000b4ec _SWI_D_inswi
-0000b4f0 SWI_D_rdytab
-0000b568 _KNL_wFlag
-0000b56c _KNL_wList
-0000b570 _KNL_alarm
-0000b574 _KNL_setpri
-0000b578 _KNL_inactive
-0000b57c _KNL_priority
-0000b580 _KNL_set
-0000b584 _KNL_curtask
-0000b588 _KNL_prevtask
-0000b58c _KNL_curtime
-0000b590 _KNL_swiptr
-0000b594 _KNL_curqueue
-0000b598 _KNL_maxqueue
-0000b59c _KNL_tswitchfxn
-0000b5a0 _KNL_tcreatefxn
-0000b5a4 _KNL_tdeletefxn
-0000b5a8 _KNL_treadyfxn
-0000b5ac _KNL_idlefxn
-0000b5b0 HWI_D_spsave
-0000b5b0 _HWI_D_spsave
-0000b5b0 _HWI_data
-0000b5bc _HWI_D_inhwi
-0000b5c0 HWI_D_bss
-0000b5c4 HWI_D_ccmask
-0000b5c8 RTA_fromHost$pipe$dtab
-0000b5d4 RTA_toHost$pipe$dtab
-0000b5e0 LNK_dspFrameRequestMask
-0000b5e0 _LNK_dspFrameRequestMask
-0000b5e4 LNK_dspFrameReadyMask
-0000b5e4 _LNK_dspFrameReadyMask
-0000b5e8 LNK_readPend
-0000b5e8 _LNK_readPend
-0000b5ec LNK_readDone
-0000b5ec _LNK_readDone
-0000b5f0 LNK_readFail
-0000b5f0 _LNK_readFail
-0000b5f4 LNK_writeFail
-0000b5f4 _LNK_writeFail
-0000b5f8 _H_Codec
-0000b5fc _sampling_freq
-0000b600 _sine_freq
-0000b604 _sine_index
-0000b610 _rtdxNullChanCnt
-0000b614 _rtdxNullFuncCnt
-0000b618 _TSK_nTasks
-0000b61c _TSK_pid
-0000b620 _TSK
-0000b624 _CLK_DFLTMICROSECS
-0000b628 _CLK_D_microseconds
-0000b62c _SYS_exitStackPtr
-0000b630 _SYS_exitStackTop
-0000b634 _DSK6713_AIC23_codeccontrolhandle
-0000b638 _DSK6713_AIC23_codecdatahandle
-0000b63c _CLK_htimePerLtime
-0000b644 IDL_D_busyObj
-0000b648 _DSK6713_version
-0000b64a ___end__
-0000b64a end
-0000b64c _SYS_PUTCBEG
-0000b84b _SYS_PUTCEND
-0000b858 TSK_idle
-0000b858 _TSK_idle
-0000b8ec IDL_A_TABBEG
-0000b8ec IDL_cpuLoad
-0000b8ec _IDL_cpuLoad
-0000b8f0 LNK_dataPump
-0000b8f0 _LNK_dataPump
-0000b8f4 RTA_dispatcher
-0000b8f4 _RTA_dispatcher
-0000b8f8 IDL_END
-0000b900 LOG_system$buf
-0000ba00 RTA_toHost$buf
-0000bbf9 KNL_swi$sts$maxfmt
-0000bbfc PIP_A_TABBEG
-0000bbfc RTA_fromHost$pipe
-0000bbfc _PIP_A_TABBEG
-0000bc00 RTA_fromHost$pipe$rd
-0000bc01 KNL_swi$sts$sumfmt
-0000bc09 KNL_swi$sts$avgfmt
-0000bc13 TSK_idle$sts$maxfmt
-0000bc1b TSK_idle$sts$sumfmt
-0000bc23 TSK_idle$sts$avgfmt
-0000bc2c RTA_fromHost$pipe$aaa
-0000bc2d IDL_busyObj$maxfmt
-0000bc30 IDL_busyObj$sumfmt
-0000bc30 RTA_fromHost$pipe$wr
-0000bc33 IDL_busyObj$avgfmt
-0000bc5c RTA_fromHost$pipe$bbb
-0000bc60 RTA_toHost$pipe
-0000bc64 RTA_toHost$pipe$rd
-0000bc90 RTA_toHost$pipe$aaa
-0000bc94 RTA_toHost$pipe$wr
-0000bcc0 RTA_toHost$pipe$bbb
-0000bcc4 HST_A_TABBEG
-0000bcc4 PIP_A_TABEND
-0000bcc4 _HST_A_TABBEG
-0000bcc4 _PIP_A_TABEND
-0000bcc8 RTA_fromHost
-0000bcc8 _RTA_fromHost
-0000bcd0 RTA_fromHost$rtdx
-0000bce4 RTA_toHost
-0000bce4 _RTA_toHost
-0000bcec RTA_toHost$rtdx
-0000bd00 HST_A_TABEND
-0000bd00 KNL_swi$sts$stsobj
-0000bd00 STS_A_TABBEG
-0000bd00 _HST_A_TABEND
-0000bd00 _STS_A_TABBEG
-0000bd04 KNL_swi$sts
-0000bd10 TSK_idle$sts$stsobj
-0000bd14 TSK_idle$sts
-0000bd20 IDL_busyObj$stsobj
-0000bd24 IDL_busyObj
-0000bd24 _IDL_busyObj
-0000bd30 KNL_swi
-0000bd30 STS_A_TABEND
-0000bd30 SWI_A_TABBEG
-0000bd30 _KNL_swi
-0000bd30 _STS_A_TABEND
-0000bd5c SWI_A_TABEND
-0000bd84 LOG_A_TABBEG
-0000bd84 LOG_system
-0000bd84 _LOG_A_TABBEG
-0000bd84 _LOG_system
-0000bd9c IDL_A_CALBEG
-0000bd9c IDL_cpuLoad$
-0000bd9c LOG_A_TABEND
-0000bd9c _LOG_A_TABEND
-0000bda0 LNK_dataPump$
-0000bda4 RTA_dispatcher$
-0000bda8 IDL_END$
-0000bdac SYS$config
-0000bdbc ___pinit__
-0000bdbc pinit
-0000bdc8 TRC_cinit
-0000bdcc TRC_R_mask
-0000bdcc _TRC_R_mask
-0000bdd0 GBL_initdone
-0000bdd4 CLK_A_TABBEG
-0000bdd4 PRD_clock
-0000bdd4 _PRD_clock
-0000bdd8 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718ae HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[728 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/e019b36bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/e019b36bdd0100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e/e019b36bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e0/1093b1cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e0/1093b1cc7506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e0/1093b1cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/1093ff98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/1093ff98d80100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/1093ff98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/10d316f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/10d316f344070018153483e962c7925e
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/10d316f344070018153483e962c7925e
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/80017c24610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/80017c24610b001815de8ca47440e6f8
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/80017c24610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/907b8f79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/907b8f79cd0100181ce89bcacea45786
deleted file mode 100644
index 34d768b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e1/907b8f79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,8 +0,0 @@
-#Tue Jan 16 16:59:04 GMT 2018
-com.ti.ccstudio.buildDefinitions.C6000.Debug.1896488960/internalBuilder/enabled=false
-com.ti.ccstudio.buildDefinitions.C6000.Debug.1896488960/internalBuilder/ignoreErr=true
-com.ti.ccstudio.buildDefinitions.C6000.Release.1767910452/internalBuilder/enabled=false
-com.ti.ccstudio.buildDefinitions.C6000.Release.1767910452/internalBuilder/ignoreErr=true
-eclipse.preferences.version=1
-environment/project=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<environment/>\r\n
-environment/project/com.ti.ccstudio.buildDefinitions.C6000.Debug.1896488960=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<environment/>\r\n
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/108b714c7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/108b714c7506001814daa3a49c232c18
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/108b714c7506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/705298d57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/705298d57506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/705298d57506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/b0eedb3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/b0eedb3a45070018153483e962c7925e
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e2/b0eedb3a45070018153483e962c7925e
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/4093c7f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/4093c7f041070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/4093c7f041070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/501c8d11e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/501c8d11e10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/501c8d11e10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/60608079cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/60608079cd0100181ce89bcacea45786
deleted file mode 100644
index 1cd3e3e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/60608079cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,1091 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "Thu Jan 18 13:48:06 2018", VERS$DATE
-
-;; PROLOGUE
- .include dsp_bios_cfg.h62
- .copy confbeg.s62
-
-;; TYPE HEADERS
- .include gbl.h62
- .include mem.h62
- .include obj.h62
- .include buf.h62
- .include pool.h62
- .include clk.h62
- .include prd.h62
- .include rtdx.h62
- .include hst.h62
- .include hwi.h62
- .include swi.h62
- .include tsk.h62
- .include idl.h62
- .include isrc.h62
- .include log.h62
- .include pip.h62
- .include sem.h62
- .include mbx.h62
- .include que.h62
- .include lck.h62
- .include sts.h62
- .include sys.h62
- .include sio.h62
- .include gio.h62
- .include dev.h62
- .include udev.h62
- .include dio.h62
- .include dgn.h62
- .include dhl.h62
- .include dpi.h62
- .include msgq.h62
- .include hook.h62
-
-;; TYPE ATTRIBUTES
-MEM$NUMOF .set 2
-MEM$SETOF .set 00H
-OBJ$NUMOF .set 0
-OBJ$SETOF .set 00H
-BUF$NUMOF .set 0
-BUF$SETOF .set 00H
-CLK$NUMOF .set 1
-CLK$SETOF .set 00H
-PRD$NUMOF .set 0
-PRD$SETOF .set 00H
-RTDX$NUMOF .set 0
-RTDX$SETOF .set 00H
-HST$NUMOF .set 2
-HST$SETOF .set 03H
-HWI$NUMOF .set 16
-HWI$SETOF .set 0ffffH
-SWI$NUMOF .set 1
-SWI$SETOF .set 00H
-TSK$NUMOF .set 1
-TSK$SETOF .set 00H
-IDL$NUMOF .set 3
-IDL$SETOF .set 00H
-ISRC$NUMOF .set 0
-ISRC$SETOF .set 00H
-LOG$NUMOF .set 1
-LOG$SETOF .set 00H
-PIP$NUMOF .set 0
-PIP$SETOF .set 00H
-SEM$NUMOF .set 0
-SEM$SETOF .set 00H
-MBX$NUMOF .set 0
-MBX$SETOF .set 00H
-QUE$NUMOF .set 0
-QUE$SETOF .set 00H
-LCK$NUMOF .set 0
-LCK$SETOF .set 00H
-STS$NUMOF .set 1
-STS$SETOF .set 00H
-SIO$NUMOF .set 0
-SIO$SETOF .set 00H
-DEV$NUMOF .set 0
-DEV$SETOF .set 00H
-UDEV$NUMOF .set 0
-UDEV$SETOF .set 00H
-DIO$NUMOF .set 0
-DIO$SETOF .set 00H
-DGN$NUMOF .set 0
-DGN$SETOF .set 00H
-DHL$NUMOF .set 0
-DHL$SETOF .set 00H
-DPI$NUMOF .set 0
-DPI$SETOF .set 00H
-HOOK$NUMOF .set 0
-HOOK$SETOF .set 00H
-
-;; module GBL (ROM, PROCID, CLKIN, FREQ, DSPTYPE, DSPSUBTYPE, CLKTYPE, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC)
- .global GBL$ ; == 1
- .global GBL_ROM ; dsp_bios_cfg.h62
- .global GBL_PROCID ; dsp_bios_cfg.h62
- .global GBL_CLKIN ; dsp_bios_cfg.h62
- .global GBL_FREQ ; dsp_bios_cfg.h62
- .global GBL_DSPTYPE ; dsp_bios_cfg.h62
- .global GBL_DSPSUBTYPE ; dsp_bios_cfg.h62
- .global GBL_CLKTYPE ; dsp_bios_cfg.h62
- .global GBL_BIGENDIAN ; dsp_bios_cfg.h62
- .global GBL_USERINIT ; dsp_bios_cfg.h62
- .global GBL_USERINITFXN ; dsp_bios_cfg.cmd
- .global GBL_ENABLEINST ; dsp_bios_cfg.h62
- .global GBL_CACHE ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGURE ; dsp_bios_cfg.h62
- .global GBL_L2MODE ; dsp_bios_cfg.h62
- .global GBL_L2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK ; dsp_bios_cfg.h62
- .global GBL_SUPPORTCSL ; dsp_bios_cfg.h62
- .global GBL_TRCMASKVALUE ; dsp_bios_cfg.h62
- .global GBL_CALLCSLCFGINIT ; dsp_bios_cfg.h62
- .global GBL_C641XL2PRIORITY ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK1 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK2 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK3 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK4 ; dsp_bios_cfg.h62
- .global GBL_L2MARMASK5 ; dsp_bios_cfg.h62
- .global GBL_L2CONFIGALLOC ; dsp_bios_cfg.h62
- .global GBL_L2ALLOC ; dsp_bios_cfg.h62
-
-;; module MEM (gNumHeap, SEGZERO, MALLOCSEG, USEMPC)
- .global MEM$ ; == 1
- .global MEM_gNumHeap ; dsp_bios_cfg.h62
- .global MEM_SEGZERO ; dsp_bios_cfg.cmd
- .global MEM_MALLOCSEG ; dsp_bios_cfg.cmd
- .global MEM_USEMPC ; dsp_bios_cfg.h62
-
-;; module OBJ ()
- .global OBJ$ ; == 0
-
-;; module BUF (ENABLED)
- .global BUF$ ; == 0
- .global BUF_ENABLED ; dsp_bios_cfg.h62
-
-;; module POOL (USEPOOL)
- .global POOL$ ; == 0
- .global POOL_USEPOOL ; dsp_bios_cfg.h62
-
-;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, MICROSECS, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN, CALDIV, CALMULT, HTIMEDIV, HTIMEMULT, LTIMEDIV, LTIMEMULT, HTIMEPERLTIME)
- .global CLK$ ; == 1
- .global CLK_INTBIT ; dsp_bios_cfg.h62
- .global CLK_REGS ; dsp_bios_cfg.h62
- .global CLK_TIMERNUM ; dsp_bios_cfg.h62
- .global CLK_USETIMER ; dsp_bios_cfg.h62
- .global CLK_MICROSECS ; dsp_bios_cfg.h62
- .global CLK_TCR ; dsp_bios_cfg.h62
- .global CLK_TDDR ; dsp_bios_cfg.h62
- .global CLK_TDDRHIGH ; dsp_bios_cfg.h62
- .global CLK_PRD ; dsp_bios_cfg.h62
- .global CLK_PRDHIGH ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMS ; dsp_bios_cfg.h62
- .global CLK_COUNTSPMSHIGH ; dsp_bios_cfg.h62
- .global CLK_TIMEFXN ; dsp_bios_cfg.cmd
- .global CLK_HOOKFXN ; dsp_bios_cfg.cmd
- .global CLK_CALDIV ; dsp_bios_cfg.h62
- .global CLK_CALMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_HTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_LTIMEDIV ; dsp_bios_cfg.h62
- .global CLK_LTIMEMULT ; dsp_bios_cfg.h62
- .global CLK_HTIMEPERLTIME ; dsp_bios_cfg.h62
-
-;; module PRD (SCALAR, THOOKFXN)
- .global PRD$ ; == 1
- .global PRD_SCALAR ; dsp_bios_cfg.h62
- .global PRD_THOOKFXN ; dsp_bios_cfg.cmd
-
-;; module RTDX (USERTDX, USERTEXECUTION, RTDXTYPE, DATAMEMSEG, BUFMEMSIZE)
- .global RTDX$ ; == 1
- .global RTDX_USERTDX ; dsp_bios_cfg.h62
- .global RTDX_USERTEXECUTION ; dsp_bios_cfg.h62
- .global RTDX_RTDXTYPE ; dsp_bios_cfg.h62
- .global RTDX_DATAMEMSEG ; dsp_bios_cfg.cmd
- .global RTDX_BUFMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE)
- .global HST$ ; == 1
- .global HST_RTDX ; dsp_bios_cfg.h62
- .global HST_DSM ; dsp_bios_cfg.h62
- .global HST_NONE ; dsp_bios_cfg.h62
- .global HST_MAXFRAMESET ; dsp_bios_cfg.h62
- .global HST_MAXFRAMEALLOWED ; dsp_bios_cfg.h62
- .global HST_DSMBUFSEG ; dsp_bios_cfg.cmd
- .global HST_DSMMEMSIZE ; dsp_bios_cfg.h62
-
-;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH, CFGDISPATCHED)
- .global HWI$ ; == 1
- .global HWI_ZEROTAB ; dsp_bios_cfg.h62
- .global HWI_GENERATE_RESET_VEC ; dsp_bios_cfg.h62
- .global HWI_POLARITYMASK ; dsp_bios_cfg.h62
- .global HWI_INTRMULTLOW ; dsp_bios_cfg.h62
- .global HWI_INTRMULTHIGH ; dsp_bios_cfg.h62
- .global HWI_CFGDISPATCHED ; dsp_bios_cfg.h62
-
-;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN)
- .global SWI$ ; == 1
- .global SWI_EHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_IHOOKFXN ; dsp_bios_cfg.cmd
- .global SWI_EXECFXN ; dsp_bios_cfg.cmd
- .global SWI_RUNFXN ; dsp_bios_cfg.cmd
-
-;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS)
- .global TSK$ ; == 1
- .global TSK_STACKSIZE ; dsp_bios_cfg.h62
- .global TSK_STACKSEG ; dsp_bios_cfg.cmd
- .global TSK_PRIORITY ; dsp_bios_cfg.h62
- .global TSK_VCREATEFXN ; dsp_bios_cfg.cmd
- .global TSK_VDELETEFXN ; dsp_bios_cfg.cmd
- .global TSK_VEXITFXN ; dsp_bios_cfg.cmd
- .global TSK_SWITCHFXN ; dsp_bios_cfg.h62
- .global TSK_READYFXN ; dsp_bios_cfg.h62
- .global TSK_NUM_HOOKS ; dsp_bios_cfg.h62
-
-;; module IDL (USECLKIDLTIME, CALIBRFXN, CALIBRERROR)
- .global IDL$ ; == 1
- .global IDL_USECLKIDLTIME ; dsp_bios_cfg.h62
- .global IDL_CALIBRFXN ; dsp_bios_cfg.cmd
- .global IDL_CALIBRERROR ; dsp_bios_cfg.h62
-
-;; module ISRC ()
- .global ISRC$ ; == 1
-
-;; module LOG (ENABLED)
- .global LOG$ ; == 1
- .global LOG_ENABLED ; dsp_bios_cfg.h62
-
-;; module PIP (gNumEmbed, gNextId, OBJSIZE)
- .global PIP$ ; == 0
- .global PIP_gNumEmbed ; dsp_bios_cfg.h62
- .global PIP_gNextId ; dsp_bios_cfg.h62
- .global PIP_OBJSIZE ; dsp_bios_cfg.h62
-
-;; module SEM ()
- .global SEM$ ; == 0
-
-;; module MBX ()
- .global MBX$ ; == 0
-
-;; module QUE ()
- .global QUE$ ; == 1
-
-;; module LCK ()
- .global LCK$ ; == 1
-
-;; module STS ()
- .global STS$ ; == 1
-
-;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
- .global SYS$ ; == 1
- .global SYS_ABORTFXN ; dsp_bios_cfg.cmd
- .global SYS_ERRORFXN ; dsp_bios_cfg.cmd
- .global SYS_EXITFXN ; dsp_bios_cfg.cmd
- .global SYS_PUTCFXN ; dsp_bios_cfg.cmd
-
-;; module SIO ()
- .global SIO$ ; == 0
-
-;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN)
- .global GIO$ ; == 0
- .global GIO_CREATEFXN ; dsp_bios_cfg.cmd
- .global GIO_DELETEFXN ; dsp_bios_cfg.cmd
- .global GIO_PENDFXN ; dsp_bios_cfg.cmd
- .global GIO_POSTFXN ; dsp_bios_cfg.cmd
-
-;; module DEV ()
- .global DEV$ ; == 0
-
-;; module UDEV ()
- .global UDEV$ ; == 0
-
-;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE)
- .global DIO$ ; == 0
- .global DIO_STATIC ; dsp_bios_cfg.h62
- .global DIO_NUMTSKBASE ; dsp_bios_cfg.h62
- .global DIO_NUMSWIBASE ; dsp_bios_cfg.h62
-
-;; module DGN ()
- .global DGN$ ; == 0
-
-;; module DHL (gChannelsAvailable)
- .global DHL$ ; == 0
- .global DHL_gChannelsAvailable ; dsp_bios_cfg.h62
-
-;; module DPI ()
- .global DPI$ ; == 0
-
-;; module MSGQ (USEMSGQ)
- .global MSGQ$ ; == 0
- .global MSGQ_USEMSGQ ; dsp_bios_cfg.h62
-
-;; module HOOK (KNLID)
- .global HOOK$ ; == 0
- .global HOOK_KNLID ; dsp_bios_cfg.h62
-
-;; MODULE CONFIGURATION
-
-;; ======== GBL_config ========
- .asg 00H, _ROM
- .asg 00H, _PROCID
- .asg 04e20H, _CLKIN
- .asg 036ee8H, _FREQ
- .asg 03eH, _DSPTYPE
- .asg 01a39H, _DSPSUBTYPE
- .asg 01770H, _CLKTYPE
- .asg 00H, _BIGENDIAN
- .asg 01H, _USERINIT
- .asg _GBL_setPLLto225MHz, _USERINITFXN
- .asg 01H, _ENABLEINST
- .asg 00H, _CACHE
- .asg 01H, _L2CONFIGURE
- .asg 00H, _L2MODE
- .asg 00H, _L2PRIORITY
- .asg 01H, _L2MARMASK
- .asg 00H, _SUPPORTCSL
- .asg 0dbefH, _TRCMASKVALUE
- .asg 01H, _CALLCSLCFGINIT
- .asg 00H, _C641XL2PRIORITY
- .asg 00H, _L2MARMASK1
- .asg 00H, _L2MARMASK2
- .asg 00H, _L2MARMASK3
- .asg 00H, _L2MARMASK4
- .asg 00H, _L2MARMASK5
- .asg 00H, _L2CONFIGALLOC
- .asg 02226H, _L2ALLOC
- GBL_config _ROM, _PROCID, _CLKIN, _FREQ, _DSPTYPE, _DSPSUBTYPE, _CLKTYPE, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC
-
-;; ======== MEM_config ========
- .asg 00H, _gNumHeap
- .asg MEM_NULL, _SEGZERO
- .asg MEM_NULL, _MALLOCSEG
- .asg 00H, _USEMPC
- MEM_config _gNumHeap, _SEGZERO, _MALLOCSEG, _USEMPC
-
-;; ======== OBJ_config ========
- OBJ_config
-
-;; ======== BUF_config ========
- .asg 01H, _ENABLED
- BUF_config _ENABLED
-
-;; ======== POOL_config ========
- .asg 00H, _USEPOOL
- POOL_config _USEPOOL
-
-;; ======== CLK_config ========
- .asg 04000H, _INTBIT
- .asg 01940000H, _REGS
- .asg 00H, _TIMERNUM
- .asg 01H, _USETIMER
- .asg 03e8H, _MICROSECS
- .asg 020H, _TCR
- .asg 00H, _TDDR
- .asg 00H, _TDDRHIGH
- .asg 0dbbaH, _PRD
- .asg 00H, _PRDHIGH
- .asg 0dbbaH, _COUNTSPMS
- .asg 00H, _COUNTSPMSHIGH
- .asg CLK_F_getshtime, _TIMEFXN
- .asg HWI_F_dispatch, _HOOKFXN
- .asg 01H, _CALDIV
- .asg 04H, _CALMULT
- .asg 01H, _HTIMEDIV
- .asg 04H, _HTIMEMULT
- .asg 01H, _LTIMEDIV
- .asg 036ee8H, _LTIMEMULT
- .asg 0dbbaH, _HTIMEPERLTIME
- CLK_config _INTBIT, _REGS, _TIMERNUM, _USETIMER, _MICROSECS, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN, _CALDIV, _CALMULT, _HTIMEDIV, _HTIMEMULT, _LTIMEDIV, _LTIMEMULT, _HTIMEPERLTIME
-
-;; ======== PRD_config ========
- .asg 04000H, _SCALAR
- .asg _KNL_tick, _THOOKFXN
- PRD_config _SCALAR, _THOOKFXN
-
-;; ======== RTDX_config ========
- .asg 01H, _USERTDX
- .asg 00H, _USERTEXECUTION
- .asg "JTAG", _RTDXTYPE
- .asg IRAM, _DATAMEMSEG
- .asg 0408H, _BUFMEMSIZE
- RTDX_config _USERTDX, _USERTEXECUTION, _RTDXTYPE, _DATAMEMSEG, _BUFMEMSIZE
-
-;; ======== HST_config ========
- .asg 01H, _RTDX
- .asg 00H, _DSM
- .asg 00H, _NONE
- .asg 040H, _MAXFRAMESET
- .asg 0ffH, _MAXFRAMEALLOWED
- .asg IRAM, _DSMBUFSEG
- .asg 0400H, _DSMMEMSIZE
- HST_config _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE
-
-;; ======== HWI_config ========
- .asg 01H, _ZEROTAB
- .asg 00H, _GENERATE_RESET_VEC
- .asg 00H, _POLARITYMASK
- .asg 0310718aeH, _INTRMULTLOW
- .asg 082039a3H, _INTRMULTHIGH
- .asg 04018H, _CFGDISPATCHED
- HWI_config _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH, _CFGDISPATCHED
-
-;; ======== SWI_config ========
- .asg GBL_NULL, _EHOOKFXN
- .asg GBL_NULL, _IHOOKFXN
- .asg SWI_F_exec, _EXECFXN
- .asg SWI_F_run, _RUNFXN
- SWI_config _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN
-
-;; ======== TSK_config ========
- .asg 0400H, _STACKSIZE
- .asg MEM_NULL, _STACKSEG
- .asg 01H, _PRIORITY
- .asg _FXN_F_nop, _VCREATEFXN
- .asg _FXN_F_nop, _VDELETEFXN
- .asg _FXN_F_nop, _VEXITFXN
- .asg 00H, _SWITCHFXN
- .asg 00H, _READYFXN
- .asg 00H, _NUM_HOOKS
- TSK_config _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS
-
-;; ======== IDL_config ========
- .asg 01H, _USECLKIDLTIME
- .asg IDL_F_stub, _CALIBRFXN
- .asg 06H, _CALIBRERROR
- IDL_config _USECLKIDLTIME, _CALIBRFXN, _CALIBRERROR
-
-;; ======== ISRC_config ========
- ISRC_config
-
-;; ======== LOG_config ========
- .asg 01H, _ENABLED
- LOG_config _ENABLED
-
-;; ======== PIP_config ========
- .asg 02H, _gNumEmbed
- .asg 00H, _gNextId
- .asg 064H, _OBJSIZE
- PIP_config _gNumEmbed, _gNextId, _OBJSIZE
-
-;; ======== SEM_config ========
- SEM_config
-
-;; ======== MBX_config ========
- MBX_config
-
-;; ======== QUE_config ========
- QUE_config
-
-;; ======== LCK_config ========
- LCK_config
-
-;; ======== STS_config ========
- STS_config
-
-;; ======== SYS_config ========
- .asg _UTL_doAbort, _ABORTFXN
- .asg _UTL_doError, _ERRORFXN
- .asg _UTL_halt, _EXITFXN
- .asg _UTL_doPutc, _PUTCFXN
- SYS_config _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN
-
-;; ======== SIO_config ========
- SIO_config
-
-;; ======== GIO_config ========
- .asg _FXN_F_nop, _CREATEFXN
- .asg _FXN_F_nop, _DELETEFXN
- .asg _FXN_F_nop, _PENDFXN
- .asg _FXN_F_nop, _POSTFXN
- GIO_config _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN
-
-;; ======== DEV_config ========
- DEV_config
-
-;; ======== UDEV_config ========
- UDEV_config
-
-;; ======== DIO_config ========
- .asg 00H, _STATIC
- .asg 00H, _NUMTSKBASE
- .asg 00H, _NUMSWIBASE
- DIO_config _STATIC, _NUMTSKBASE, _NUMSWIBASE
-
-;; ======== DGN_config ========
- DGN_config
-
-;; ======== DHL_config ========
- .asg 00H, _gChannelsAvailable
- DHL_config _gChannelsAvailable
-
-;; ======== DPI_config ========
- DPI_config
-
-;; ======== MSGQ_config ========
- .asg 00H, _USEMSGQ
- MSGQ_config _USEMSGQ
-
-;; ======== HOOK_config ========
- .asg 00H, _KNLID
- HOOK_config _KNLID
-
-;; ======== MEM_Obj SDRAM ========
-;; This object defines 8MB for the DSP's off-chip memory
-;;
-;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global SDRAM
- .asg 0800000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== MEM_Obj IRAM ========
-;; Internal L2 memory
-;;
-;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId)
- .global IRAM
- .asg 040000H, _len
- .asg 00H, _iAllocHeap
- .asg MEM_NULL, _iSegZero
- .asg segment_name, _iHeapId
- MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId
-
-;; ======== CLK_Obj PRD_clock ========
-;; This clock function calls PRD_tick from within the on-chip timer ISR
-;;
-;; CLK_Obj PRD_clock (function)
- .global PRD_clock
- .asg PRD_F_tick, _function
- CLK_Obj 1, PRD_clock, 0, _function
-
-;; ======== HST_Obj RTA_fromHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_fromHost
- .asg "input", _mode
- .asg "<NULL>", _buf
- .asg 04H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HST_Obj RTA_toHost ========
-;; Used to access LOG and STS data
-;;
-;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
- .global RTA_toHost
- .asg "output", _mode
- .asg "<NULL>", _buf
- .asg 040H, _framesize
- .asg 01H, _numframes
- .asg 00H, _stsflg
- .asg _FXN_F_nop, _notify
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg "RTDX", _lnk
- .asg 04H, _bufFrameAlign
- HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign
-
-;; ======== HWI_Obj HWI_RESET ========
-;; defines function for the RESET ISR
-;;
-;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESET
- .asg _c_int00, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_NMI ========
-;; defines function for the NMI ISR
-;;
-;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_NMI
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED0 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED0
- .asg RESERVED, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 04H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_RESERVED1 ========
-;; RESERVED for RTDX
-;;
-;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_RESERVED1
- .asg _RTDX_Poll, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "RTDX", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT4 ========
-;; defines the INT4 Interrupt
-;;
-;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT4
- .asg _ISR_AIC, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 01H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 010H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT5 ========
-;; defines the INT5 Interrupt
-;;
-;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT5
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 020H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT6 ========
-;; defines the INT6 Interrupt
-;;
-;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT6
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 040H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT7 ========
-;; defines the INT7 Interrupt
-;;
-;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT7
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 080H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT8 ========
-;; defines the INT8 Interrupt
-;;
-;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT8
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0100H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT9 ========
-;; defines the INT9 Interrupt
-;;
-;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT9
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0200H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT10 ========
-;; defines the INT10 Interrupt
-;;
-;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT10
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0400H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT11 ========
-;; defines the INT11 Interrupt
-;;
-;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT11
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 0800H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT12 ========
-;; defines the INT12 Interrupt
-;;
-;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT12
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 01000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT13 ========
-;; defines the INT13 Interrupt
-;;
-;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT13
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 02000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT14 ========
-;; defines the INT14 Interrupt
-;;
-;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT14
- .asg CLK_F_isr, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "CLK", _client
- .asg 01H, _iUseDispatcher
- .asg CLK_A_TABBEG, _iArg
- .asg 04000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== HWI_Obj HWI_INT15 ========
-;; defines the INT15 Interrupt
-;;
-;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack)
- .global HWI_INT15
- .asg HWI_unused, _function
- .asg "Nothing", _monitor
- .asg 00H, _addr
- .asg "signed", _dataType
- .asg "STS_add(*addr)", _operation
- .asg "USER", _client
- .asg 00H, _iUseDispatcher
- .asg 00H, _iArg
- .asg 08000H, _IntrMask
- .asg 01H, _iCCBitMask
- .asg 00H, _iLoadTrack
- HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack
-
-;; ======== SWI_Obj KNL_swi ========
-;; This Software Interrupt calls the TSK scheduler
-;;
-;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global KNL_swi
- .asg _KNL_run, _function
- .asg 00H, _pri
- .asg 00H, _mailbox
- .asg 00H, _arg0
- .asg 00H, _arg1
- .asg 01H, _dorta
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== TSK_Obj TSK_idle ========
-;; This is the idle task; it only runs when no other task is ready
-;;
-;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype)
- .global TSK_idle
- .asg IDL_F_loop, _iFXN
- .asg 00H, _iARG0
- .asg 00H, _iARG1
- .asg 00H, _iARG2
- .asg 00H, _iARG3
- .asg 00H, _iARG4
- .asg 00H, _iARG5
- .asg 00H, _iARG6
- .asg 00H, _iARG7
- .asg 01H, _iAUTOSTK
- .asg null, _iMANSTK
- .asg 0400H, _iSTKSZ
- .asg IRAM, _iSTKSEG
- .asg 00H, _iPRI
- .asg 00H, _iENV
- .asg 01H, _iEXITFLAG
- .asg 00H, _iUSETSKNAME
- .asg 00H, _iSTATREG
- .asg 00H, _Order
- .asg 02H, _filter
- .asg "%g inst", _maxformat
- .asg "%g inst", _sumformat
- .asg "%.2f inst", _avgformat
- .asg 01H, _filtmaxmult
- .asg 01H, _filtsummult
- .asg 00H, _unittype
- TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype
-
-;; ======== IDL_Obj IDL_cpuLoad ========
-;; This object is required by the system to acquire CPU load data
-;;
-;; IDL_Obj IDL_cpuLoad (function, calibration)
- .global IDL_cpuLoad
- .asg IDL_F_busy, _function
- .asg 01H, _calibration
- IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration
-
-;; ======== IDL_Obj LNK_dataPump ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj LNK_dataPump (function, calibration)
- .global LNK_dataPump
- .asg LNK_F_dataPump, _function
- .asg 01H, _calibration
- IDL_Obj 1, LNK_dataPump, 0, _function, _calibration
-
-;; ======== IDL_Obj RTA_dispatcher ========
-;; This object cannot be deleted
-;;
-;; IDL_Obj RTA_dispatcher (function, calibration)
- .global RTA_dispatcher
- .asg RTA_F_dispatch, _function
- .asg 01H, _calibration
- IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration
-
-;; ======== LOG_Obj LOG_system ========
-;; This object is required by the system to accumulate execution trace information
-;;
-;; LOG_Obj LOG_system (bufseg, buflen, logtype, iType, iFormat)
- .global LOG_system
- .asg IRAM, _bufseg
- .asg 040H, _buflen
- .asg "circular", _logtype
- .asg "system", _iType
- .asg "0x%x, 0x%x, 0x%x", _iFormat
- LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype, _iType, _iFormat
-
-;; ======== STS_Obj IDL_busyObj ========
-;; This object is required by the system to accumulate CPU load statistics
-;;
-;; STS_Obj IDL_busyObj (prev, filter, maxformat, sumformat, avgformat, op, uType, iA, iB, iC, prevlow)
- .global IDL_busyObj
- .asg 00H, _prev
- .asg 01H, _filter
- .asg "%g", _maxformat
- .asg "%g", _sumformat
- .asg "%.2f", _avgformat
- .asg 00H, _op
- .asg 02H, _uType
- .asg 01H, _iA
- .asg 00H, _iB
- .asg 01H, _iC
- .asg 00H, _prevlow
- STS_Obj 1, IDL_busyObj, 0, _prev, _filter, _maxformat, _sumformat, _avgformat, _op, _uType, _iA, _iB, _iC, _prevlow
-
-;; MODULE INITIALIZATION
- .sect ".sysinit"
- .global BIOS_init, _BIOS_init
-BIOS_init:
-_BIOS_init:
- GBL_preamble
- GBL_init
- SEM_init
- MEM_init
- OBJ_init
- BUF_init
- POOL_init
- CLK_init
- PRD_init
- RTDX_init
- IDL_init
- LCK_init
- LOG_init
- MBX_init
- PIP_init
- QUE_init
- STS_init
- SYS_init
- HWI_init
- HST_init
- DEV_init
- UDEV_init
- DIO_init
- DGN_init
- DHL_init
- DPI_init
- SIO_init
- GIO_init
- MSGQ_init
- SWI_init
- HOOK_init
- TSK_init
- ISRC_init
- GBL_postamble
-
-;; MODULE STARTUP
- .sect ".sysinit"
- .global BIOS_start, _BIOS_start
-BIOS_start:
-_BIOS_start:
- GBL_preamble
- GBL_startup
- SEM_startup
- MEM_startup
- OBJ_startup
- BUF_startup
- POOL_startup
- CLK_startup
- PRD_startup
- RTDX_startup
- IDL_startup
- LCK_startup
- LOG_startup
- MBX_startup
- PIP_startup
- QUE_startup
- STS_startup
- SYS_startup
- HWI_startup
- HST_startup
- DEV_startup
- UDEV_startup
- DIO_startup
- DGN_startup
- DHL_startup
- DPI_startup
- SIO_startup
- GIO_startup
- MSGQ_startup
- SWI_startup
- HOOK_startup
- TSK_startup
- ISRC_startup
- GBL_postamble
-
-;; EPILOGUE
- GBL_end
- MEM_end
- OBJ_end
- BUF_end
- POOL_end
- CLK_end
- PRD_end
- RTDX_end
- HST_end
- HWI_end
- SWI_end
- TSK_end
- IDL_end
- ISRC_end
- LOG_end
- PIP_end
- SEM_end
- MBX_end
- QUE_end
- LCK_end
- STS_end
- SYS_end
- SIO_end
- GIO_end
- DEV_end
- UDEV_end
- DIO_end
- DGN_end
- DHL_end
- DPI_end
- MSGQ_end
- HOOK_end
-
- .copy confend.s62
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/80b611167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/80b611167506001814daa3a49c232c18
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/80b611167506001814daa3a49c232c18
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/e0987524610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/e0987524610b001815de8ca47440e6f8
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e4/e0987524610b001815de8ca47440e6f8
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e5/20b6ac81dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e5/20b6ac81dd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e5/20b6ac81dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00a4bff041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00a4bff041070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/00a4bff041070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a3b698d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a3b698d80100181ce89bcacea45786
deleted file mode 100644
index d8ec432..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/30a3b698d80100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/Github/RTDSP/lab3/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/Github/RTDSP/lab3/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/Github/RTDSP/lab3/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4027890d7606001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4027890d7606001814daa3a49c232c18
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e6/4027890d7606001814daa3a49c232c18
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/b08d9979cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/b08d9979cd0100181ce89bcacea45786
deleted file mode 100644
index 7bbbb0a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/b08d9979cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,1789 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Tue Jan 23 11:15:05 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000a9a0
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000bdcf 00034231 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 000036a0
- 000043c0 00000900 rts6700.lib : divd.obj (.text:__divd)
- 00004cc0 00000620 : divf.obj (.text:__divf)
- 000052e0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00005760 00000380 rts6700.lib : frcmpyd_div.obj (.text:__frcmpyd_div)
- 00005ae0 00000360 intio.obj (.text)
- 00005e40 00000320 rts6700.lib : sin.obj (.text:_sin)
- 00006160 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00006440 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00006680 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00006840 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 000069e0 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00006b60 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 00006ce0 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 00006e20 00000120 : sinit.obj (.text:_call_dtors)
- 00006f40 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00007040 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00007140 00000100 rts6700.lib : atexit.obj (.text:_atexit)
- 00007240 000000e0 : frcmpyf_div.obj (.text:__frcmpyf_div)
- 00007320 000000e0 : round.obj (.text:__nround)
- 00007400 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 000074e0 000000c0 rts6700.lib : modf.obj (.text:_modf)
- 000075a0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00007660 000000a0 rts6700.lib : fixfu.obj (.text:__fixfu)
- 00007700 000000a0 : mpyll.obj (.text:__mpyll)
- 000077a0 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00007840 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00007880 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 000078c0 00000040 : divd.obj (.text:___isnan)
- 00007900 00000040 : divf.obj (.text:___isnanf)
- 00007940 00000040 : trunc.obj (.text:__trunc)
- 00007980 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 000079a0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 000079c0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 000079e0 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00007a00 00000020 : _lock.obj (.text:__register_lock)
- 00007a20 00000020 : _lock.obj (.text:__register_unlock)
- 00007a40 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00007a60 00000ffc
- 00007a60 00000564 dsp_bios_cfg.obj (.cinit)
- 00007fc4 00000004 --HOLE-- [fill = 0]
- 00007fc8 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00008234 00000004 --HOLE-- [fill = 0]
- 00008238 000001a4 : knl.o67 (.cinit)
- 000083dc 00000004 --HOLE-- [fill = 0]
- 000083e0 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 0000850c 00000004 --HOLE-- [fill = 0]
- 00008510 000000b0 bios.a67 : swi.o67 (.cinit)
- 000085c0 00000070 : tsk.o67 (.cinit)
- 00008630 00000060 : tsk_stup.o67 (.cinit)
- 00008690 0000005c intio.obj (.cinit)
- 000086ec 00000004 --HOLE-- [fill = 0]
- 000086f0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 0000874c 00000004 --HOLE-- [fill = 0]
- 00008750 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 000087a4 00000004 --HOLE-- [fill = 0]
- 000087a8 0000004c bios.a67 : rta.o67 (.cinit)
- 000087f4 00000004 --HOLE-- [fill = 0]
- 000087f8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00008844 00000004 --HOLE-- [fill = 0]
- 00008848 00000048 rts6700.lib : sin.obj (.cinit)
- 00008890 00000034 bios.a67 : hwi.o67 (.cinit)
- 000088c4 00000004 --HOLE-- [fill = 0]
- 000088c8 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 000088f8 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 00008924 00000004 --HOLE-- [fill = 0]
- 00008928 0000002c rts6700.lib : exit.obj (.cinit)
- 00008954 00000004 --HOLE-- [fill = 0]
- 00008958 00000024 bios.a67 : obj_init.o67 (.cinit)
- 0000897c 00000004 --HOLE-- [fill = 0]
- 00008980 0000001c : sys.o67 (.cinit)
- 0000899c 00000004 --HOLE-- [fill = 0]
- 000089a0 0000001c rts6700.lib : _lock.obj (.cinit)
- 000089bc 00000004 --HOLE-- [fill = 0]
- 000089c0 0000001c : atexit.obj (.cinit)
- 000089dc 00000004 --HOLE-- [fill = 0]
- 000089e0 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 000089f8 00000010 rts6700.lib : divd.obj (.cinit)
- 00008a08 00000010 : divf.obj (.cinit)
- 00008a18 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 00008a24 00000004 --HOLE-- [fill = 0]
- 00008a28 0000000c : idl_busy.o67 (.cinit)
- 00008a34 00000004 --HOLE-- [fill = 0]
- 00008a38 0000000c : knl_swit.o67 (.cinit)
- 00008a44 00000004 --HOLE-- [fill = 0]
- 00008a48 0000000c rts6700.lib : sinit.obj (.cinit)
- 00008a54 00000004 --HOLE-- [fill = 0]
- 00008a58 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 00008a5c 00000004
- 00008a5c 00000004 --HOLE-- [fill = 0]
-
-.rtdx_text
-* 0 00008a60 00000ea0
- 00008a60 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00008e60 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 000091a0 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 000094a0 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 000095e0 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 000096c0 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 00009740 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 000097a0 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 00009800 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 00009840 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 00009880 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 000098a0 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 000098c0 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 000098e0 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.far 0 00009900 00000980 UNINITIALIZED
- 00009900 00000428 intio.obj (.far)
- 00009d28 00000188 rts6700.lib : atexit.obj (.far)
- 00009eb0 000000f4 csl6713.lib : csl_irq.obj (.far)
- 00009fa4 000000d8 bios.a67 : knl.o67 (.far)
- 0000a07c 0000005c : tsk.o67 (.far)
- 0000a0d8 00000054 : obj_init.o67 (.far)
- 0000a12c 00000050 : tsk_stup.o67 (.far)
- 0000a17c 00000004 rts6700.lib : sinit.obj (.far)
- 0000a180 00000040 : sin.obj (.far)
- 0000a1c0 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 0000a1f8 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 0000a220 00000020 bios.a67 : sys.o67 (.far)
- 0000a240 00000010 : knl_tick.o67 (.far)
- 0000a250 0000000c : utl_putc.o67 (.far)
- 0000a25c 0000000c rts6700.lib : exit.obj (.far)
- 0000a268 00000008 : _lock.obj (.far)
- 0000a270 00000008 : divd.obj (.far)
- 0000a278 00000008 : divf.obj (.far)
-
-.rtdx_data
-* 0 0000a280 0000044c UNINITIALIZED
- 0000a280 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000a690 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000a6b0 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.hst1 0 0000a6cc 00000010 UNINITIALIZED
- 0000a6cc 00000010 dsp_bios_cfg.obj (.hst1)
-
-.sysinit 0 0000a6e0 00000420
- 0000a6e0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000a9a0 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000aa60 00000080 : tsk_init.o67 (.sysinit)
- 0000aae0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000ab00 00000400 UNINITIALIZED
- 0000ab00 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000af00 00000400 UNINITIALIZED
- 0000af00 00000400 --HOLE--
-
-.bss 0 0000b300 0000034a UNINITIALIZED
- 0000b300 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000b400 000000cc : biosdata.o67 (.bss)
- 0000b4cc 0000009c : swi.o67 (.bss)
- 0000b568 00000048 : knl.o67 (.bss)
- 0000b5b0 00000018 : hwi.o67 (.bss)
- 0000b5c8 00000018 dsp_bios_cfg.obj (.bss)
- 0000b5e0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000b5f8 00000010 intio.obj (.bss)
- 0000b608 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000b618 0000000c bios.a67 : tsk.o67 (.bss)
- 0000b624 00000008 : clk_data.o67 (.bss)
- 0000b62c 00000008 : sys.o67 (.bss)
- 0000b634 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000b63c 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000b640 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000b644 00000004 : idl_busy.o67 (.bss)
- 0000b648 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000b64c 00000200
- 0000b64c 00000200 --HOLE-- [fill = 00000000]
-
-.tsk 0 0000b84c 00000060 UNINITIALIZED
- 0000b84c 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000b8ac 00000040
- 0000b8ac 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.idl 0 0000b8ec 00000010 UNINITIALIZED
- 0000b8ec 00000010 dsp_bios_cfg.obj (.idl)
-
-.LOG_system$buf
-* 0 0000b900 00000100 UNINITIALIZED
- 0000b900 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000ba00 00000100 UNINITIALIZED
- 0000ba00 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000bb00 000000f9
- 0000bb00 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000bb4e 00000002 --HOLE-- [fill = 0]
- 0000bb50 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000bb90 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000bbb3 00000022 : utl_doer.o67 (.const)
- 0000bbd5 00000003 --HOLE-- [fill = 0]
- 0000bbd8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000bbf8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000bbf9 0000003f COPY SECTION
- 0000bbf9 0000003f dsp_bios_cfg.obj (.printf)
-
-.pip 0 0000bbfc 000000c8 UNINITIALIZED
- 0000bbfc 000000c8 dsp_bios_cfg.obj (.pip)
-
-.hst 0 0000bcc4 0000003c UNINITIALIZED
- 0000bcc4 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000bd00 00000030
- 0000bd00 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000bd30 0000002c UNINITIALIZED
- 0000bd30 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000bd5c 00000028
- 0000bd5c 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000bd84 00000018
- 0000bd84 00000018 dsp_bios_cfg.obj (.log)
-
-.idlcal 0 0000bd9c 00000010 UNINITIALIZED
- 0000bd9c 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.sys 0 0000bdac 00000010 UNINITIALIZED
- 0000bdac 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000bdbc 0000000c
- 0000bdbc 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000bdc0 00000004 : rtdx_mon.o62 (.pinit)
- 0000bdc4 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000bdc8 0000000c
- 0000bdc8 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000bdd4 00000008 UNINITIALIZED
- 0000bdd4 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b300 $bss
-0000b300 .bss
-00000000 .data
-000043c0 .text
-0000a884 BIOS$$CLKOFF
-0000a844 BIOS$$CLKON
-0000a6e0 BIOS_init
-0000a8ec BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000bdd4 CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000b428 CLK_D_idletime
-0000b424 CLK_D_isrhook
-0000b420 CLK_D_tabbeg
-0000b41c CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000b418 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000bdd8 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-00006a08 GBL_USERINITFXN
-00000001 GBL_boot
-0000bdd0 GBL_initdone
-0000af00 GBL_stackbeg
-0000b2ff GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000bcc4 HST_A_TABBEG
-0000bd00 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000b494 HST_D_chanmask
-0000b498 HST_D_tabbeg
-0000b49c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000b5c0 HWI_D_bss
-0000b5c4 HWI_D_ccmask
-0000b5b0 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718ae HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bd9c IDL_A_CALBEG
-0000b8ec IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000b644 IDL_D_busyObj
-0000b408 IDL_D_calbeg
-0000b404 IDL_D_calibrate
-0000b400 IDL_D_tabbeg
-0000b8f8 IDL_END
-0000bda8 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000bd24 IDL_busyObj
-0000bc33 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000bc2d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000bd20 IDL_busyObj$stsobj
-0000bc30 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000b8ec IDL_cpuLoad
-0000bd9c IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000bd30 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000bd04 KNL_swi$sts
-0000bc09 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000bbf9 KNL_swi$sts$maxfmt
-0000bd00 KNL_swi$sts$stsobj
-0000bc01 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000b8f0 LNK_dataPump
-0000bda0 LNK_dataPump$
-0000b5e4 LNK_dspFrameReadyMask
-0000b5e0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000b5ec LNK_readDone
-0000b5f0 LNK_readFail
-0000b5e8 LNK_readPend
-00000370 LNK_rrloop
-0000b5f4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000bd84 LOG_A_TABBEG
-0000bd9c LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000b40c LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000bd84 LOG_system
-0000b900 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bbfc PIP_A_TABBEG
-0000bcc4 PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000b410 PIP_D_tabbeg
-0000b414 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000b450 PRD_D_cur
-0000b454 PRD_D_elapsed
-0000b458 PRD_D_prevtim
-0000b45c PRD_D_scalar
-0000b460 PRD_D_swihandle
-0000b464 PRD_D_tabbeg
-0000b468 PRD_D_tablen
-0000b46c PRD_D_thook
-0000b44c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000bdd4 PRD_clock
-00000001 QUE$
-0000b470 RTA_D_fromHost
-0000b478 RTA_D_logval
-0000b488 RTA_D_stsval
-0000b474 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000b8f4 RTA_dispatcher
-0000bda4 RTA_dispatcher$
-00001f28 RTA_execute
-0000bcc8 RTA_fromHost
-0000a6cc RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bbfc RTA_fromHost$pipe
-0000bc2c RTA_fromHost$pipe$aaa
-0000bc5c RTA_fromHost$pipe$bbb
-0000b5c8 RTA_fromHost$pipe$dtab
-0000bc00 RTA_fromHost$pipe$rd
-0000bc30 RTA_fromHost$pipe$wr
-0000bcd0 RTA_fromHost$rtdx
-0000bce4 RTA_toHost
-0000ba00 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bc60 RTA_toHost$pipe
-0000bc90 RTA_toHost$pipe$aaa
-0000bcc0 RTA_toHost$pipe$bbb
-0000b5d4 RTA_toHost$pipe$dtab
-0000bc64 RTA_toHost$pipe$rd
-0000bc94 RTA_toHost$pipe$wr
-0000bcec RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000bd00 STS_A_TABBEG
-0000bd30 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000bd30 SWI_A_TABBEG
-0000bd5c SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000b4e4 SWI_D_curfxn
-0000b4d4 SWI_D_curmask
-0000b4e0 SWI_D_curmbox
-0000b4d8 SWI_D_curset
-0000b4d0 SWI_D_execaddr
-0000b4ec SWI_D_inswi
-0000b4dc SWI_D_lock
-0000b4e8 SWI_D_rdybeg
-0000b4f0 SWI_D_rdytab
-0000b4cc SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000bdac SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000bdcc TRC_R_mask
-0000bdc8 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000b858 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000ab00 TSK_idle$stack
-0000ae98 TSK_idle$stkptr
-0000bd14 TSK_idle$sts
-0000bc23 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000bc13 TSK_idle$sts$maxfmt
-0000bd10 TSK_idle$sts$stsobj
-0000bc1b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000a6e0 _BIOS_init
-0000a8ec _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000b624 _CLK_DFLTMICROSECS
-0000b448 _CLK_D_countspms
-0000b43c _CLK_D_dirty
-0000b628 _CLK_D_microseconds
-0000b440 _CLK_D_prd
-0000b444 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000b42c _CLK_htimeDiv
-0000b430 _CLK_htimeMult
-0000b63c _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000b434 _CLK_ltimeDiv
-0000b438 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00009900 _Config
-0000b634 _DSK6713_AIC23_codeccontrolhandle
-0000b638 _DSK6713_AIC23_codecdatahandle
-00006c4c _DSK6713_AIC23_config
-00006160 _DSK6713_AIC23_openCodec
-00006c28 _DSK6713_AIC23_rget
-00006b60 _DSK6713_AIC23_rset
-00005460 _DSK6713_getVersion
-000054b0 _DSK6713_init
-000053cc _DSK6713_rget
-000053b8 _DSK6713_rset
-0000b648 _DSK6713_version
-000052e0 _DSK6713_wait
-00005384 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000b4a4 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000b4a8 _GBL_freq
-00004320 _GBL_getVersion
-0000b4a0 _GBL_procId
-00006a08 _GBL_setPLLto225MHz
-0000bcc4 _HST_A_TABBEG
-0000bd00 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000b5bc _HWI_D_inhwi
-0000b5b0 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b2f8 _HWI_STKBOTTOM
-0000af00 _HWI_STKTOP
-0000b5b0 _HWI_data
-00004020 _HWI_disable
-0000b300 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000b5f8 _H_Codec
-0000bd24 _IDL_busyObj
-0000b8ec _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00007840 _IRQ_enable
-00007980 _IRQ_globalDisable
-000079a0 _IRQ_globalEnable
-00006680 _IRQ_map
-000079c0 _IRQ_nmiEnable
-00005dc0 _ISR_AIC
-0000b570 _KNL_alarm
-00003440 _KNL_check
-0000b594 _KNL_curqueue
-0000b584 _KNL_curtask
-0000b58c _KNL_curtime
-0000a044 _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000b5ac _KNL_idlefxn
-0000b578 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000b598 _KNL_maxqueue
-00003aa0 _KNL_post
-0000b588 _KNL_prevtask
-0000b57c _KNL_priority
-00009fa4 _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000b580 _KNL_set
-0000b574 _KNL_setpri
-0000bd30 _KNL_swi
-0000b590 _KNL_swiptr
-00002cec _KNL_switch
-0000b5a0 _KNL_tcreatefxn
-0000b5a4 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000b5a8 _KNL_treadyfxn
-0000b59c _KNL_tswitchfxn
-0000b568 _KNL_wFlag
-0000b56c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000b8f0 _LNK_dataPump
-0000b5e4 _LNK_dspFrameReadyMask
-0000b5e0 _LNK_dspFrameRequestMask
-0000b5ec _LNK_readDone
-0000b5f0 _LNK_readFail
-0000b5e8 _LNK_readPend
-0000b5f4 _LNK_writeFail
-0000bd84 _LOG_A_TABBEG
-0000bd9c _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000b40c _LOG_D_system
-00003ea0 _LOG_event
-0000bd84 _LOG_system
-00006f40 _MCBSP_open
-00006840 _MCBSP_reset
-00007040 _MCBSP_start
-0000b4ac _MEM_D_NUMSEGMENTS
-0000b4b4 _MEM_D_freelist
-0000b4b8 _MEM_D_lockaddr
-0000b4b0 _MEM_D_memtab
-0000b4bc _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000aae0 _OBJ_init
-0000a110 _OBJ_segtab
-0000a0d8 _OBJ_table
-0000bbfc _PIP_A_TABBEG
-0000bcc4 _PIP_A_TABEND
-0000b44c _PRD_D_tick
-0000bdd4 _PRD_clock
-0000b8f4 _RTA_dispatcher
-0000bcc8 _RTA_fromHost
-0000bce4 _RTA_toHost
-0000a280 _RTDX_Buffer
-0000a68c _RTDX_Buffer_End
-00009740 _RTDX_Buffer_Initialize
-00009880 _RTDX_Buffer_Read
-000097a0 _RTDX_Buffer_ReadCB
-00009800 _RTDX_Buffer_Size
-0000a688 _RTDX_Buffer_Start
-000098a0 _RTDX_Buffer_Write
-00008e60 _RTDX_Buffer_WriteCB
-00009840 _RTDX_Final_RT_Monitor
-000096c0 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-000098e0 _RTDX_Mask_IER
-000094a0 _RTDX_Mon_Queue
-00008a60 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000a69c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000bd00 _STS_A_TABBEG
-0000bd30 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000b4e4 _SWI_D_curfxn
-0000b4d4 _SWI_D_curmask
-0000b4d8 _SWI_D_curset
-0000b4d0 _SWI_D_execaddr
-0000b4ec _SWI_D_inswi
-0000b4dc _SWI_D_lock
-0000b4e8 _SWI_D_rdybeg
-0000b4cc _SWI_D_runaddr
-0000b4cc _SWI_data
-00000e50 _SWI_post
-0000b4c0 _SYS
-0000b64c _SYS_PUTCBEG
-0000b84b _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-0000a220 _SYS_exitStack
-0000b62c _SYS_exitStackPtr
-0000b630 _SYS_exitStackTop
-0000bdcc _TRC_R_mask
-0000b620 _TSK
-0000a07c _TSK_ATTRS
-0000a098 _TSK_config
-00002fa0 _TSK_exit
-0000b858 _TSK_idle
-0000aa60 _TSK_init
-0000b618 _TSK_nTasks
-0000b61c _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-0000a0b8 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000b4c8 __HOOK_NUMHOOKS
-0000b4c4 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009f9c __IRQ_dispatchTable
-00009ed8 __IRQ_eventTable
-00007a40 __IRQ_hookFetchPacket
-00009f5c __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-0000a1f0 __MCBSP_hDev0
-0000a1f4 __MCBSP_hDev1
-0000a154 __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-0000a12c __TSK_mutex
-0000a264 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00007880 ___add_dtor
-00009d28 ___atexit_func_id__
-ffffffff ___binit__
-0000b300 ___bss__
-ffffffff ___c_args__
-00007a60 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000b64a ___end__
-00007a60 ___etext__
-0000bdbc ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-0000a25c __cleanup_ptr
-000043c0 __divd
-00004cc0 __divf
-0000a260 __dtors_ptr
-00007660 __fixfu
-00005760 __frcmpyd_div
-00007240 __frcmpyf_div
-0000a268 __lock
-00007700 __mpyll
-000079e0 __nop
-00007320 __nround
-00007a00 __register_lock
-00007a20 __register_unlock
-0000af00 __stack
-00006ce0 __strasgi
-00007940 __trunc
-0000a26c __unlock
-00007140 _atexit
-0000a9a0 _c_int00
-00006e20 _call_dtors
-0000a17c _dtors
-00005be0 _init_HWI
-00005b1c _init_hardware
-00005ae0 _main
-00006440 _memcpy
-000074e0 _modf
-0000747c _mono_read_16Bit
-00007454 _mono_write_16Bit
-0000b610 _rtdxNullChanCnt
-0000b614 _rtdxNullFuncCnt
-0000a690 _rtdx_buffer_state
-0000a6b0 _rtdx_mon_state
-0000b5fc _sampling_freq
-00005e40 _sin
-0000b600 _sine_freq
-0000b604 _sine_index
-00005c78 _sine_init
-00005d28 _sinegen
-00007428 _stereo_read_16Bit
-00007400 _stereo_write_16Bit
-00009928 _table
-000069e0 _wait500nS
-ffffffff binit
-00007a60 cinit
-00000000 edata
-0000b64a end
-00007a60 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000bdbc pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divd
-00004cc0 __divf
-00004e20 GBL_CLKIN
-00005205 GBL_A_VERSION
-000052e0 _DSK6713_wait
-00005384 _DSK6713_waitusec
-000053b8 _DSK6713_rset
-000053cc _DSK6713_rget
-00005460 _DSK6713_getVersion
-000054b0 _DSK6713_init
-00005760 __frcmpyd_div
-00005ae0 _main
-00005b1c _init_hardware
-00005be0 _init_HWI
-00005c78 _sine_init
-00005d28 _sinegen
-00005dc0 _ISR_AIC
-00005e40 _sin
-00006160 _DSK6713_AIC23_openCodec
-00006440 _memcpy
-00006680 _IRQ_map
-00006840 _MCBSP_reset
-000069e0 _wait500nS
-00006a08 GBL_USERINITFXN
-00006a08 _GBL_setPLLto225MHz
-00006b60 _DSK6713_AIC23_rset
-00006c28 _DSK6713_AIC23_rget
-00006c4c _DSK6713_AIC23_config
-00006ce0 __strasgi
-00006e20 _call_dtors
-00006f40 _MCBSP_open
-00007040 _MCBSP_start
-00007140 _atexit
-00007240 __frcmpyf_div
-00007320 __nround
-00007400 _stereo_write_16Bit
-00007428 _stereo_read_16Bit
-00007454 _mono_write_16Bit
-0000747c _mono_read_16Bit
-000074e0 _modf
-00007660 __fixfu
-00007700 __mpyll
-00007840 _IRQ_enable
-00007880 ___add_dtor
-00007940 __trunc
-00007980 _IRQ_globalDisable
-000079a0 _IRQ_globalEnable
-000079c0 _IRQ_nmiEnable
-000079e0 __nop
-00007a00 __register_lock
-00007a20 __register_unlock
-00007a40 __IRQ_hookFetchPacket
-00007a60 ___cinit__
-00007a60 ___etext__
-00007a60 cinit
-00007a60 etext
-00008a60 _RTDX_Poll
-00008e60 _RTDX_Buffer_WriteCB
-000094a0 _RTDX_Mon_Queue
-000096c0 _RTDX_Init_RT_Monitor
-00009740 _RTDX_Buffer_Initialize
-000097a0 _RTDX_Buffer_ReadCB
-00009800 _RTDX_Buffer_Size
-00009840 _RTDX_Final_RT_Monitor
-00009880 _RTDX_Buffer_Read
-000098a0 _RTDX_Buffer_Write
-000098e0 _RTDX_Mask_IER
-00009900 _Config
-00009928 _table
-00009d28 ___atexit_func_id__
-00009ed8 __IRQ_eventTable
-00009f5c __IRQ_intTable
-00009f9c __IRQ_dispatchTable
-00009fa4 _KNL_queues
-0000a044 _KNL_dummy
-0000a07c _TSK_ATTRS
-0000a098 _TSK_config
-0000a0b8 _TSK_timerSem
-0000a0d8 _OBJ_table
-0000a110 _OBJ_segtab
-0000a12c __TSK_mutex
-0000a154 __MEM_mutex
-0000a17c _dtors
-0000a1f0 __MCBSP_hDev0
-0000a1f4 __MCBSP_hDev1
-0000a220 _SYS_exitStack
-0000a25c __cleanup_ptr
-0000a260 __dtors_ptr
-0000a264 ___TI_enable_exit_profile_output
-0000a268 __lock
-0000a26c __unlock
-0000a280 _RTDX_Buffer
-0000a688 _RTDX_Buffer_Start
-0000a68c _RTDX_Buffer_End
-0000a690 _rtdx_buffer_state
-0000a69c _RTDX_writing
-0000a6b0 _rtdx_mon_state
-0000a6cc RTA_fromHost$buf
-0000a6e0 BIOS_init
-0000a6e0 _BIOS_init
-0000a844 BIOS$$CLKON
-0000a884 BIOS$$CLKOFF
-0000a8ec BIOS_start
-0000a8ec _BIOS_start
-0000a9a0 _c_int00
-0000aa60 _TSK_init
-0000aae0 _OBJ_init
-0000ab00 TSK_idle$stack
-0000ae98 TSK_idle$stkptr
-0000af00 GBL_stackbeg
-0000af00 _HWI_STKTOP
-0000af00 __stack
-0000b2f8 _HWI_STKBOTTOM
-0000b2ff GBL_stackend
-0000b300 $bss
-0000b300 .bss
-0000b300 _HWI_dispatchTab
-0000b300 ___bss__
-0000b400 IDL_D_tabbeg
-0000b404 IDL_D_calibrate
-0000b408 IDL_D_calbeg
-0000b40c LOG_D_system
-0000b40c _LOG_D_system
-0000b410 PIP_D_tabbeg
-0000b414 PIP_D_tablen
-0000b418 CLK_R_time
-0000b41c CLK_D_timefxn
-0000b420 CLK_D_tabbeg
-0000b424 CLK_D_isrhook
-0000b428 CLK_D_idletime
-0000b42c _CLK_htimeDiv
-0000b430 _CLK_htimeMult
-0000b434 _CLK_ltimeDiv
-0000b438 _CLK_ltimeMult
-0000b43c _CLK_D_dirty
-0000b440 _CLK_D_prd
-0000b444 _CLK_D_tddr
-0000b448 _CLK_D_countspms
-0000b44c PRD_D_tick
-0000b44c _PRD_D_tick
-0000b450 PRD_D_cur
-0000b454 PRD_D_elapsed
-0000b458 PRD_D_prevtim
-0000b45c PRD_D_scalar
-0000b460 PRD_D_swihandle
-0000b464 PRD_D_tabbeg
-0000b468 PRD_D_tablen
-0000b46c PRD_D_thook
-0000b470 RTA_D_fromHost
-0000b474 RTA_D_toHost
-0000b478 RTA_D_logval
-0000b488 RTA_D_stsval
-0000b494 HST_D_chanmask
-0000b498 HST_D_tabbeg
-0000b49c HST_D_tabend
-0000b4a0 _GBL_procId
-0000b4a4 _GBL_clkIn
-0000b4a8 _GBL_freq
-0000b4ac _MEM_D_NUMSEGMENTS
-0000b4b0 _MEM_D_memtab
-0000b4b4 _MEM_D_freelist
-0000b4b8 _MEM_D_lockaddr
-0000b4bc _MEM_D_unlockaddr
-0000b4c0 _SYS
-0000b4c4 __HOOK_knlId
-0000b4c8 __HOOK_NUMHOOKS
-0000b4cc SWI_D_runaddr
-0000b4cc _SWI_D_runaddr
-0000b4cc _SWI_data
-0000b4d0 SWI_D_execaddr
-0000b4d0 _SWI_D_execaddr
-0000b4d4 SWI_D_curmask
-0000b4d4 _SWI_D_curmask
-0000b4d8 SWI_D_curset
-0000b4d8 _SWI_D_curset
-0000b4dc SWI_D_lock
-0000b4dc _SWI_D_lock
-0000b4e0 SWI_D_curmbox
-0000b4e4 SWI_D_curfxn
-0000b4e4 _SWI_D_curfxn
-0000b4e8 SWI_D_rdybeg
-0000b4e8 _SWI_D_rdybeg
-0000b4ec SWI_D_inswi
-0000b4ec _SWI_D_inswi
-0000b4f0 SWI_D_rdytab
-0000b568 _KNL_wFlag
-0000b56c _KNL_wList
-0000b570 _KNL_alarm
-0000b574 _KNL_setpri
-0000b578 _KNL_inactive
-0000b57c _KNL_priority
-0000b580 _KNL_set
-0000b584 _KNL_curtask
-0000b588 _KNL_prevtask
-0000b58c _KNL_curtime
-0000b590 _KNL_swiptr
-0000b594 _KNL_curqueue
-0000b598 _KNL_maxqueue
-0000b59c _KNL_tswitchfxn
-0000b5a0 _KNL_tcreatefxn
-0000b5a4 _KNL_tdeletefxn
-0000b5a8 _KNL_treadyfxn
-0000b5ac _KNL_idlefxn
-0000b5b0 HWI_D_spsave
-0000b5b0 _HWI_D_spsave
-0000b5b0 _HWI_data
-0000b5bc _HWI_D_inhwi
-0000b5c0 HWI_D_bss
-0000b5c4 HWI_D_ccmask
-0000b5c8 RTA_fromHost$pipe$dtab
-0000b5d4 RTA_toHost$pipe$dtab
-0000b5e0 LNK_dspFrameRequestMask
-0000b5e0 _LNK_dspFrameRequestMask
-0000b5e4 LNK_dspFrameReadyMask
-0000b5e4 _LNK_dspFrameReadyMask
-0000b5e8 LNK_readPend
-0000b5e8 _LNK_readPend
-0000b5ec LNK_readDone
-0000b5ec _LNK_readDone
-0000b5f0 LNK_readFail
-0000b5f0 _LNK_readFail
-0000b5f4 LNK_writeFail
-0000b5f4 _LNK_writeFail
-0000b5f8 _H_Codec
-0000b5fc _sampling_freq
-0000b600 _sine_freq
-0000b604 _sine_index
-0000b610 _rtdxNullChanCnt
-0000b614 _rtdxNullFuncCnt
-0000b618 _TSK_nTasks
-0000b61c _TSK_pid
-0000b620 _TSK
-0000b624 _CLK_DFLTMICROSECS
-0000b628 _CLK_D_microseconds
-0000b62c _SYS_exitStackPtr
-0000b630 _SYS_exitStackTop
-0000b634 _DSK6713_AIC23_codeccontrolhandle
-0000b638 _DSK6713_AIC23_codecdatahandle
-0000b63c _CLK_htimePerLtime
-0000b644 IDL_D_busyObj
-0000b648 _DSK6713_version
-0000b64a ___end__
-0000b64a end
-0000b64c _SYS_PUTCBEG
-0000b84b _SYS_PUTCEND
-0000b858 TSK_idle
-0000b858 _TSK_idle
-0000b8ec IDL_A_TABBEG
-0000b8ec IDL_cpuLoad
-0000b8ec _IDL_cpuLoad
-0000b8f0 LNK_dataPump
-0000b8f0 _LNK_dataPump
-0000b8f4 RTA_dispatcher
-0000b8f4 _RTA_dispatcher
-0000b8f8 IDL_END
-0000b900 LOG_system$buf
-0000ba00 RTA_toHost$buf
-0000bbf9 KNL_swi$sts$maxfmt
-0000bbfc PIP_A_TABBEG
-0000bbfc RTA_fromHost$pipe
-0000bbfc _PIP_A_TABBEG
-0000bc00 RTA_fromHost$pipe$rd
-0000bc01 KNL_swi$sts$sumfmt
-0000bc09 KNL_swi$sts$avgfmt
-0000bc13 TSK_idle$sts$maxfmt
-0000bc1b TSK_idle$sts$sumfmt
-0000bc23 TSK_idle$sts$avgfmt
-0000bc2c RTA_fromHost$pipe$aaa
-0000bc2d IDL_busyObj$maxfmt
-0000bc30 IDL_busyObj$sumfmt
-0000bc30 RTA_fromHost$pipe$wr
-0000bc33 IDL_busyObj$avgfmt
-0000bc5c RTA_fromHost$pipe$bbb
-0000bc60 RTA_toHost$pipe
-0000bc64 RTA_toHost$pipe$rd
-0000bc90 RTA_toHost$pipe$aaa
-0000bc94 RTA_toHost$pipe$wr
-0000bcc0 RTA_toHost$pipe$bbb
-0000bcc4 HST_A_TABBEG
-0000bcc4 PIP_A_TABEND
-0000bcc4 _HST_A_TABBEG
-0000bcc4 _PIP_A_TABEND
-0000bcc8 RTA_fromHost
-0000bcc8 _RTA_fromHost
-0000bcd0 RTA_fromHost$rtdx
-0000bce4 RTA_toHost
-0000bce4 _RTA_toHost
-0000bcec RTA_toHost$rtdx
-0000bd00 HST_A_TABEND
-0000bd00 KNL_swi$sts$stsobj
-0000bd00 STS_A_TABBEG
-0000bd00 _HST_A_TABEND
-0000bd00 _STS_A_TABBEG
-0000bd04 KNL_swi$sts
-0000bd10 TSK_idle$sts$stsobj
-0000bd14 TSK_idle$sts
-0000bd20 IDL_busyObj$stsobj
-0000bd24 IDL_busyObj
-0000bd24 _IDL_busyObj
-0000bd30 KNL_swi
-0000bd30 STS_A_TABEND
-0000bd30 SWI_A_TABBEG
-0000bd30 _KNL_swi
-0000bd30 _STS_A_TABEND
-0000bd5c SWI_A_TABEND
-0000bd84 LOG_A_TABBEG
-0000bd84 LOG_system
-0000bd84 _LOG_A_TABBEG
-0000bd84 _LOG_system
-0000bd9c IDL_A_CALBEG
-0000bd9c IDL_cpuLoad$
-0000bd9c LOG_A_TABEND
-0000bd9c _LOG_A_TABEND
-0000bda0 LNK_dataPump$
-0000bda4 RTA_dispatcher$
-0000bda8 IDL_END$
-0000bdac SYS$config
-0000bdbc ___pinit__
-0000bdbc pinit
-0000bdc8 TRC_cinit
-0000bdcc TRC_R_mask
-0000bdcc _TRC_R_mask
-0000bdd0 GBL_initdone
-0000bdd4 CLK_A_TABBEG
-0000bdd4 PRD_clock
-0000bdd4 _PRD_clock
-0000bdd8 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718ae HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[728 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/f00573277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/f00573277506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e7/f00573277506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/a0960225610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/a0960225610b001815de8ca47440e6f8
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/a0960225610b001815de8ca47440e6f8
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c061088f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c061088f41070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e8/c061088f41070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/1078108f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/1078108f41070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/1078108f41070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/30a0042edf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/30a0042edf0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/30a0042edf0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/80f2022edf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/80f2022edf0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/80f2022edf0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b04b32f47406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b04b32f47406001814daa3a49c232c18
deleted file mode 100644
index 88e5f73..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b04b32f47406001814daa3a49c232c18
+++ /dev/null
@@ -1,157 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b0a8fe98d80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b0a8fe98d80100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/b0a8fe98d80100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/e0d3c62ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/e0d3c62ddf0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/e9/e0d3c62ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/20c8172ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/20c8172ee10100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/20c8172ee10100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/8086b255e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/8086b255e20100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/8086b255e20100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/e02f10167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/e02f10167506001814daa3a49c232c18
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ea/e02f10167506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/30fa9f53e20100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/30fa9f53e20100181ce89bcacea45786
deleted file mode 100644
index 528d0ac..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/30fa9f53e20100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
- //mono_write_16Bit(sample_in);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/8037f6e4e50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/8037f6e4e50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/eb/8037f6e4e50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40497669dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40497669dd0100181ce89bcacea45786
deleted file mode 100644
index 7e5b75a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/40497669dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,165 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {-
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y*32767;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/a03218f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/a03218f344070018153483e962c7925e
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/a03218f344070018153483e962c7925e
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/c08018f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/c08018f344070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ec/c08018f344070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/4097afcc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/4097afcc7506001814daa3a49c232c18
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/4097afcc7506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/e02120f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/e02120f344070018153483e962c7925e
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ed/e02120f344070018153483e962c7925e
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/101eb16bdd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/101eb16bdd0100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/101eb16bdd0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/6077078f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/6077078f41070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/6077078f41070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/805c8111e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/805c8111e10100181ce89bcacea45786
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/805c8111e10100181ce89bcacea45786
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/f032b149dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/f032b149dd0100181ce89bcacea45786
deleted file mode 100644
index 2dbc9c3..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ee/f032b149dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {-
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/70bc8c79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/70bc8c79cd0100181ce89bcacea45786
deleted file mode 100644
index 9e27703..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/70bc8c79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<launchConfiguration type="com.ti.ccstudio.debug.core.CCELaunchType">
-<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;sourceLookupDirector&gt;&#13;&#10;&lt;sourceContainers duplicates=&quot;false&quot;&gt;&#13;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;default/&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#13;&#10;&lt;/sourceContainers&gt;&#13;&#10;&lt;/sourceLookupDirector&gt;&#13;&#10;"/>
-<booleanAttribute key="com.ti.ccstudio.debug.core.MRU_PROGRAM_S_ONLY" value="false"/>
-<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
-<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_ID" value="com.ti.ccstudio.debug.core.CCEDebugger"/>
-<stringAttribute key="CCEDebugOptions.CPU_RESOLVE_OPTION" value="exact"/>
-<stringAttribute key="org.eclipse.debug.ui.DISPLAY_NAME" value="RTDSP [Debug] - Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X"/>
-<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_REGISTER_GROUPS" value=""/>
-<mapAttribute key="com.ti.ccstudio.debug.core.VARIABLE_STATE"/>
-<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_START_MODE" value="run"/>
-<stringAttribute key="com.ti.ccstudio.debug.core.DISPLAY_NAME_FORMAT" value="RTDSP [Debug] - {0}"/>
-<stringAttribute key="CCEDebugOptions.TARGET_CONFIGURATION_OPTION" value="full"/>
-<stringAttribute key="org.eclipse.cdt.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;memoryBlockExpressionList/&gt;&#13;&#10;"/>
-<stringAttribute key="com.ti.ccstudio.debug.core.MRU_PROGRAM_NAME" value="C:\Github\RTDSP\lab3\RTDSP\Debug\RTDSP.out"/>
-<stringAttribute key="com.ti.ccstudio.debug.core.MRU_MODULES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;modules&gt;&#13;&#10;&lt;module name=&quot;C:\GIT\RTDSP\lab3\RTDSP\Debug\RTDSP.out&quot; time=&quot;Fri Jan 19 14:07:28 GMT 2018&quot; time_long=&quot;1516370848357&quot;/&gt;&#13;&#10;&lt;module name=&quot;C:\Github\RTDSP\lab3\RTDSP\Debug\RTDSP.out&quot; time=&quot;Tue Jan 23 11:15:11 GMT 2018&quot; time_long=&quot;1516706111426&quot;/&gt;&#13;&#10;&lt;/modules&gt;&#13;&#10;"/>
-<stringAttribute key="CCEDebugOptions.CPU_NAME" value="Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X"/>
-<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="RTDSP"/>
-<stringAttribute key="org.eclipse.cdt.launch.GLOBAL_VARIABLES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;globalVariableList/&gt;&#13;&#10;"/>
-<stringAttribute key="CCEDebugOptions.DEBUG_PROPERTIES.Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot; ?&gt;&#10;&lt;PropertyValues&gt;&#10;&#10; &lt;property id=&quot;ConnectOnStartup&quot;&gt;&#10; &lt;curValue&gt;1&lt;/curValue&gt;&#10; &lt;/property&gt;&#10;&#10;&lt;/PropertyValues&gt;&#10;"/>
-<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/RTDSP.out"/>
-<stringAttribute key="CCEDebugOptions.CPU_ISA" value="TMS320C671X"/>
-<stringAttribute key="com.ti.ccstudio.debug.core.BUILD_CONFIGURATION" value="Debug"/>
-<stringAttribute key="CCEDebugOptions.TARGET_CONFIGURATION_FILE" value="C:\GIT\RTDSP\lab3\RTDSP\NewTargetConfiguration.ccxml"/>
-<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="com.ti.ccstudio.debug.core.sourceLocator"/>
-</launchConfiguration>
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/90f1ea46de0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/90f1ea46de0100181ce89bcacea45786
deleted file mode 100644
index e97b596..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/90f1ea46de0100181ce89bcacea45786
+++ /dev/null
@@ -1,165 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/c032bc78dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/c032bc78dd0100181ce89bcacea45786
deleted file mode 100644
index 2fc8c22..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/ef/c032bc78dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,165 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < M; i++) {
- if(i < N){
- y += x[i] * b[M-i-1];
- }
- }
- return y*32767;
-} \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20865ad57506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20865ad57506001814daa3a49c232c18
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20865ad57506001814daa3a49c232c18
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/208f91f041070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/208f91f041070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/208f91f041070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20901a167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20901a167506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/20901a167506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30aae624610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30aae624610b001815de8ca47440e6f8
deleted file mode 100644
index b4748f5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30aae624610b001815de8ca47440e6f8
+++ /dev/null
@@ -1 +0,0 @@
-"../dsp_bios_.tcf" "../intio.c" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30c6c750dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30c6c750dd0100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f/30c6c750dd0100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/1030152ee10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/1030152ee10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/1030152ee10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/50fe14f344070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/50fe14f344070018153483e962c7925e
deleted file mode 100644
index ffba6d5..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/50fe14f344070018153483e962c7925e
+++ /dev/null
@@ -1,1761 +0,0 @@
-******************************************************************************
- TMS320C6x Linker PC v6.1.15
-******************************************************************************
->> Linked Thu Feb 01 11:38:54 2018
-
-OUTPUT FILE NAME: <RTDSP.out>
-ENTRY POINT SYMBOL: "_c_int00" address: 0000b080
-
-
-MEMORY CONFIGURATION
-
- name origin length used unused attr fill
----------------------- -------- --------- -------- -------- ---- --------
- IRAM 00000000 00040000 0000c497 00033b69 RWIX
- SDRAM 80000000 00800000 00000000 00800000 RWIX
-
-
-SECTION ALLOCATION MAP
-
- output attributes/
-section page origin length input sections
--------- ---- ---------- ---------- ----------------
-.vers 0 00000000 00000040 COPY SECTION
- 00000000 00000040 dsp_bios_cfg.obj (.vers)
-
-.prd 0 00000000 00000000 UNINITIALIZED
-
-.hwi_vec 0 00000000 00000200
- 00000000 00000200 dsp_bios_cfg.obj (.hwi_vec)
-
-.data 0 00000000 00000000 UNINITIALIZED
-
-.bios 0 00000200 000041c0
- 00000200 00000600 lnkrtdx.a67 : rtdx.o67 (.bios)
- 00000800 000005e0 bios.a67 : gbl_setL2CacheMode.o67 (.bios)
- 00000de0 00000540 : swi.o67 (.bios)
- 00001320 00000460 : hwi_disp_asm.o67 (.bios)
- 00001780 000003a0 : prd.o67 (.bios)
- 00001b20 000002c0 : knl_run.o67 (.bios)
- 00001de0 000002c0 : rta.o67 (.bios)
- 000020a0 000002c0 : sem_pend.o67 (.bios)
- 00002360 00000260 : knl_tick.o67 (.bios)
- 000025c0 00000240 : pip.o67 (.bios)
- 00002800 00000220 : sem_dopo.o67 (.bios)
- 00002a20 00000200 : tsk_setu.o67 (.bios)
- 00002c20 000001c0 : knl_swit.o67 (.bios)
- 00002de0 000001c0 biosC6000.a67 : clk.o67 (.bios)
- 00002fa0 000001a0 bios.a67 : tsk_exit.o67 (.bios)
- 00003140 00000180 : autoinit.o67 (.bios)
- 000032c0 00000180 : tsk_stup.o67 (.bios)
- 00003440 00000140 : knl_chec.o67 (.bios)
- 00003580 000000e0 : gbl_cslcacheinit.o67 (.bios)
- 00003660 000000e0 : knl_exit.o67 (.bios)
- 00003740 000000e0 : sem_post.o67 (.bios)
- 00003820 000000e0 : sem_post_asm.o67 (.bios)
- 00003900 000000e0 biosC6000.a67 : clk_meas.o67 (.bios)
- 000039e0 000000c0 bios.a67 : knl_ipos.o67 (.bios)
- 00003aa0 000000c0 : knl_post.o67 (.bios)
- 00003b60 000000c0 : lck.o67 (.bios)
- 00003c20 000000c0 : sys_exit.o67 (.bios)
- 00003ce0 000000c0 biosC6000.a67 : clk_htime.o67 (.bios)
- 00003da0 00000080 bios.a67 : fxn.o67 (.bios)
- 00003e20 00000080 : idl_busy.o67 (.bios)
- 00003ea0 00000080 : log.o67 (.bios)
- 00003f20 00000080 : sts.o67 (.bios)
- 00003fa0 00000080 biosC6000.a67 : idl_cal.o67 (.bios)
- 00004020 00000060 bios.a67 : hwi_c.o67 (.bios)
- 00004080 00000060 : sem_pend_counting.o67 (.bios)
- 000040e0 00000060 : sys_abor.o67 (.bios)
- 00004140 00000060 : utl_putc.o67 (.bios)
- 000041a0 00000060 biosC6000.a67 : clk_start.o67 (.bios)
- 00004200 00000040 bios.a67 : idl_stub.o67 (.bios)
- 00004240 00000040 : rta_andn.o67 (.bios)
- 00004280 00000040 : utl_doab.o67 (.bios)
- 000042c0 00000040 biosC6000.a67 : clk_stop.o67 (.bios)
- 00004300 00000020 bios.a67 : fxn_c.o67 (.bios)
- 00004320 00000020 : gbl_vers.o67 (.bios)
- 00004340 00000020 : idl.o67 (.bios)
- 00004360 00000020 : sts_set.o67 (.bios)
- 00004380 00000020 : utl_doer.o67 (.bios)
- 000043a0 00000020 : utl_halt.o67 (.bios)
-
-.text 0 000043c0 00002ac0
- 000043c0 00000900 rts6700.lib : divd.obj (.text:__divd)
- 00004cc0 00000480 dsk6713bslccsv4.lib : dsk6713.obj (.text)
- 00005140 00000380 rts6700.lib : frcmpyd_div.obj (.text:__frcmpyd_div)
- 000054c0 00000360 intio.obj (.text)
- 00005820 000002e0 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.text)
- 00005b00 00000240 rts6700.lib : memcpy62.obj (.text:_memcpy)
- 00005d40 000001c0 csl6713.lib : csl_irq.obj (.text:_IRQ_map)
- 00005f00 000001a0 : csl_mcbsp.obj (.text:_MCBSP_reset)
- 000060a0 00000180 bios.a67 : gbl_cslpllinit62.o67 (.text)
- 00006220 00000180 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.text)
- 000063a0 00000140 rts6700.lib : strasg.obj (.text:__strasgi)
- 000064e0 00000120 : sinit.obj (.text:_call_dtors)
- 00006600 00000100 csl6713.lib : csl_mcbsp.obj (.text:_MCBSP_open)
- 00006700 00000100 : csl_mcbsp.obj (.text:_MCBSP_start)
- 00006800 00000100 rts6700.lib : remi.obj (.text:__remi)
- 00006900 00000100 : atexit.obj (.text:_atexit)
- 00006a00 000000e0 dsk6713bslccsv4.lib : helper_functions_ISR.obj (.text)
- 00006ae0 000000c0 bios.a67 : tsk_stup.o67 (.text)
- 00006ba0 000000a0 rts6700.lib : mpyll.obj (.text:__mpyll)
- 00006c40 000000a0 csl6713.lib : csl_irq.obj (.text:_setMux)
- 00006ce0 00000040 : csl_irq.obj (.text:_IRQ_enable)
- 00006d20 00000040 rts6700.lib : sinit.obj (.text:___add_dtor)
- 00006d60 00000040 : divd.obj (.text:___isnan)
- 00006da0 00000020 csl6713.lib : csl_irq.obj (.text:_IRQ_globalDisable)
- 00006dc0 00000020 : csl_irq.obj (.text:_IRQ_globalEnable)
- 00006de0 00000020 : csl_irq.obj (.text:_IRQ_nmiEnable)
- 00006e00 00000020 rts6700.lib : _lock.obj (.text:__nop)
- 00006e20 00000020 : _lock.obj (.text:__register_lock)
- 00006e40 00000020 : _lock.obj (.text:__register_unlock)
- 00006e60 00000020 csl6713.lib : csl_irq.obj (.text)
-
-.cinit 0 00006e80 00001764
- 00006e80 00000820 intio.obj (.cinit)
- 000076a0 00000564 dsp_bios_cfg.obj (.cinit)
- 00007c04 00000004 --HOLE-- [fill = 0]
- 00007c08 0000026c bios.a67 : biosdata.o67 (.cinit)
- 00007e74 00000004 --HOLE-- [fill = 0]
- 00007e78 000001a4 : knl.o67 (.cinit)
- 0000801c 00000004 --HOLE-- [fill = 0]
- 00008020 0000012c csl6713.lib : csl_irq.obj (.cinit)
- 0000814c 00000004 --HOLE-- [fill = 0]
- 00008150 000000b0 bios.a67 : swi.o67 (.cinit)
- 00008200 00000070 : tsk.o67 (.cinit)
- 00008270 00000060 : tsk_stup.o67 (.cinit)
- 000082d0 0000005c lnkrtdx.a67 : rtdx.o67 (.cinit)
- 0000832c 00000004 --HOLE-- [fill = 0]
- 00008330 00000054 csl6713.lib : csl_mcbsp.obj (.cinit)
- 00008384 00000004 --HOLE-- [fill = 0]
- 00008388 0000004c bios.a67 : rta.o67 (.cinit)
- 000083d4 00000004 --HOLE-- [fill = 0]
- 000083d8 0000004c rtdx.lib : buffer1.o62 (.cinit)
- 00008424 00000004 --HOLE-- [fill = 0]
- 00008428 00000034 bios.a67 : hwi.o67 (.cinit)
- 0000845c 00000004 --HOLE-- [fill = 0]
- 00008460 00000030 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.cinit)
- 00008490 0000002c bios.a67 : utl_putc.o67 (.cinit)
- 000084bc 00000004 --HOLE-- [fill = 0]
- 000084c0 0000002c rts6700.lib : exit.obj (.cinit)
- 000084ec 00000004 --HOLE-- [fill = 0]
- 000084f0 00000024 bios.a67 : obj_init.o67 (.cinit)
- 00008514 00000004 --HOLE-- [fill = 0]
- 00008518 0000001c : sys.o67 (.cinit)
- 00008534 00000004 --HOLE-- [fill = 0]
- 00008538 0000001c rts6700.lib : _lock.obj (.cinit)
- 00008554 00000004 --HOLE-- [fill = 0]
- 00008558 0000001c : atexit.obj (.cinit)
- 00008574 00000004 --HOLE-- [fill = 0]
- 00008578 00000018 bios.a67 : knl_tick.o67 (.cinit)
- 00008590 00000010 rts6700.lib : divd.obj (.cinit)
- 000085a0 0000000c bios.a67 : gbl_setL2CacheMode.o67 (.cinit)
- 000085ac 00000004 --HOLE-- [fill = 0]
- 000085b0 0000000c : idl_busy.o67 (.cinit)
- 000085bc 00000004 --HOLE-- [fill = 0]
- 000085c0 0000000c : knl_swit.o67 (.cinit)
- 000085cc 00000004 --HOLE-- [fill = 0]
- 000085d0 0000000c rts6700.lib : sinit.obj (.cinit)
- 000085dc 00000004 --HOLE-- [fill = 0]
- 000085e0 00000004 (.pad.cinit) [fill = 0]
-
-.args 0 000085e4 00000004
- 000085e4 00000004 --HOLE-- [fill = 0]
-
-.far 0 000085e8 000014c8 UNINITIALIZED
- 000085e8 00000fb8 intio.obj (.far)
- 000095a0 00000188 rts6700.lib : atexit.obj (.far)
- 00009728 000000f4 csl6713.lib : csl_irq.obj (.far)
- 0000981c 000000d8 bios.a67 : knl.o67 (.far)
- 000098f4 0000005c : tsk.o67 (.far)
- 00009950 00000054 : obj_init.o67 (.far)
- 000099a4 00000050 : tsk_stup.o67 (.far)
- 000099f4 00000038 csl6713.lib : csl_mcbsp.obj (.far)
- 00009a2c 00000028 dsk6713bslccsv4.lib : dsk6713_aic23_registers.obj (.far)
- 00009a54 00000020 bios.a67 : sys.o67 (.far)
- 00009a74 00000010 : knl_tick.o67 (.far)
- 00009a84 0000000c : utl_putc.o67 (.far)
- 00009a90 0000000c rts6700.lib : exit.obj (.far)
- 00009a9c 00000008 : _lock.obj (.far)
- 00009aa4 00000008 : divd.obj (.far)
- 00009aac 00000004 : sinit.obj (.far)
-
-.hst1 0 00009ab0 00000010 UNINITIALIZED
- 00009ab0 00000010 dsp_bios_cfg.obj (.hst1)
-
-.rtdx_text
-* 0 00009ac0 00000ea0
- 00009ac0 00000400 rtdx.lib : rtdx_mon.o62 (.rtdx_text:_RTDX_Poll)
- 00009ec0 00000340 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_WriteCB)
- 0000a200 00000300 : buffer1.o62 (.rtdx_text:_RTDX_write_next)
- 0000a500 00000140 : rtdx_mon.o62 (.rtdx_text:_RTDX_Mon_Queue)
- 0000a640 000000e0 : buffer1.o62 (.rtdx_text:_claim)
- 0000a720 00000080 : rtdx_mon.o62 (.rtdx_text:_RTDX_Init_RT_Monitor)
- 0000a7a0 00000060 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Initialize)
- 0000a800 00000060 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_ReadCB)
- 0000a860 00000040 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Size)
- 0000a8a0 00000040 : rtdx_mon.o62 (.rtdx_text:_RTDX_Final_RT_Monitor)
- 0000a8e0 00000020 : buffer2.o62 (.rtdx_text:_RTDX_Buffer_Read)
- 0000a900 00000020 : buffer1.o62 (.rtdx_text:_RTDX_Buffer_Write)
- 0000a920 00000020 : rtdx_mon.o62 (.rtdx_text:_RTDX_checksum)
- 0000a940 00000020 : intr_tgt.o62 (.rtdx_text)
-
-.rtdx_data
-* 0 0000a960 0000044c UNINITIALIZED
- 0000a960 00000410 dsp_bios_cfg.obj (.rtdx_data)
- 0000ad70 00000020 rtdx.lib : buffer1.o62 (.rtdx_data)
- 0000ad90 0000001c : rtdx_mon.o62 (.rtdx_data)
-
-.idl 0 0000adac 00000010 UNINITIALIZED
- 0000adac 00000010 dsp_bios_cfg.obj (.idl)
-
-.sysinit 0 0000adc0 00000420
- 0000adc0 000002c0 dsp_bios_cfg.obj (.sysinit)
- 0000b080 000000c0 bios.a67 : boot.o67 (.sysinit)
- 0000b140 00000080 : tsk_init.o67 (.sysinit)
- 0000b1c0 00000020 : obj_init.o67 (.sysinit)
-
-.TSK_idle$stk
-* 0 0000b1e0 00000400 UNINITIALIZED
- 0000b1e0 00000400 dsp_bios_cfg.obj (.TSK_idle$stk)
-
-.stack 0 0000b5e0 00000400 UNINITIALIZED
- 0000b5e0 00000400 --HOLE--
-
-.bss 0 0000b9e0 00000342 UNINITIALIZED
- 0000b9e0 00000100 bios.a67 : hwi_disp_asm.o67 (.bss)
- 0000bae0 000000cc : biosdata.o67 (.bss)
- 0000bbac 0000009c : swi.o67 (.bss)
- 0000bc48 00000048 : knl.o67 (.bss)
- 0000bc90 00000018 : hwi.o67 (.bss)
- 0000bca8 00000018 dsp_bios_cfg.obj (.bss)
- 0000bcc0 00000018 lnkrtdx.a67 : rtdx.o67 (.bss)
- 0000bcd8 00000010 rtdx.lib : buffer1.o62 (.bss)
- 0000bce8 0000000c bios.a67 : tsk.o67 (.bss)
- 0000bcf4 00000008 : clk_data.o67 (.bss)
- 0000bcfc 00000008 : sys.o67 (.bss)
- 0000bd04 00000008 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.bss)
- 0000bd0c 00000008 intio.obj (.bss)
- 0000bd14 00000004 bios.a67 : clk_data2.o67 (.bss)
- 0000bd18 00000004 : gbl_setL2CacheMode.o67 (.bss)
- 0000bd1c 00000004 : idl_busy.o67 (.bss)
- 0000bd20 00000002 dsk6713bslccsv4.lib : dsk6713.obj (.bss)
-
-.trace 0 0000bd24 00000200
- 0000bd24 00000200 --HOLE-- [fill = 00000000]
-
-.pip 0 0000bf24 000000c8 UNINITIALIZED
- 0000bf24 000000c8 dsp_bios_cfg.obj (.pip)
-
-.idlcal 0 0000bfec 00000010 UNINITIALIZED
- 0000bfec 00000010 dsp_bios_cfg.obj (.idlcal)
-
-.LOG_system$buf
-* 0 0000c000 00000100 UNINITIALIZED
- 0000c000 00000100 dsp_bios_cfg.obj (.LOG_system$buf)
-
-.hst0 0 0000c100 00000100 UNINITIALIZED
- 0000c100 00000100 dsp_bios_cfg.obj (.hst0)
-
-.const 0 0000c200 000000f9
- 0000c200 0000004e bios.a67 : tsk_stup.o67 (.const)
- 0000c24e 00000002 --HOLE-- [fill = 0]
- 0000c250 00000040 dsk6713bslccsv4.lib : dsk6713_aic23_opencodec.obj (.const)
- 0000c290 00000023 bios.a67 : utl_doab.o67 (.const)
- 0000c2b3 00000022 : utl_doer.o67 (.const)
- 0000c2d5 00000003 --HOLE-- [fill = 0]
- 0000c2d8 00000020 dsk6713bslccsv4.lib : dsk6713.obj (.const)
- 0000c2f8 00000001 bios.a67 : tsk.o67 (.const)
-
-.printf 0 0000c2f9 0000003f COPY SECTION
- 0000c2f9 0000003f dsp_bios_cfg.obj (.printf)
-
-.tsk 0 0000c2fc 00000060 UNINITIALIZED
- 0000c2fc 00000060 dsp_bios_cfg.obj (.tsk)
-
-.gblinit 0 0000c35c 00000040
- 0000c35c 00000040 dsp_bios_cfg.obj (.gblinit)
-
-.hst 0 0000c39c 0000003c UNINITIALIZED
- 0000c39c 0000003c dsp_bios_cfg.obj (.hst)
-
-.sts 0 0000c3d8 00000030
- 0000c3d8 00000030 dsp_bios_cfg.obj (.sts)
-
-.swi 0 0000c408 0000002c UNINITIALIZED
- 0000c408 0000002c dsp_bios_cfg.obj (.swi)
-
-.switch 0 0000c434 00000028
- 0000c434 00000028 rtdx.lib : rtdx_mon.o62 (.switch)
-
-.log 0 0000c45c 00000018
- 0000c45c 00000018 dsp_bios_cfg.obj (.log)
-
-.sys 0 0000c474 00000010 UNINITIALIZED
- 0000c474 00000010 dsp_bios_cfg.obj (.sys)
-
-.pinit 0 0000c484 0000000c
- 0000c484 00000004 rtdx.lib : buffer1.o62 (.pinit)
- 0000c488 00000004 : rtdx_mon.o62 (.pinit)
- 0000c48c 00000004 --HOLE-- [fill = 0]
-
-.trcdata 0 0000c490 0000000c
- 0000c490 0000000c bios.a67 : trc.o67 (.trcdata)
-
-.clk 0 0000c49c 00000008 UNINITIALIZED
- 0000c49c 00000008 dsp_bios_cfg.obj (.clk)
-
-
-GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
-
-address name
--------- ----
-0000b9e0 $bss
-0000b9e0 .bss
-00000000 .data
-000043c0 .text
-0000af64 BIOS$$CLKOFF
-0000af24 BIOS$$CLKON
-0000adc0 BIOS_init
-0000afcc BIOS_start
-00000000 BUF$
-00000001 BUF_ENABLED
-00000001 CLK$
-0000c49c CLK_A_TABBEG
-00000001 CLK_CALDIV
-00000004 CLK_CALMULT
-0000dbba CLK_COUNTSPMS
-00000000 CLK_COUNTSPMSHIGH
-0000bb08 CLK_D_idletime
-0000bb04 CLK_D_isrhook
-0000bb00 CLK_D_tabbeg
-0000bafc CLK_D_timefxn
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00002de0 CLK_F_getltime
-00003d00 CLK_F_getshtime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00001320 CLK_HOOKFXN
-00000001 CLK_HTIMEDIV
-00000004 CLK_HTIMEMULT
-0000dbba CLK_HTIMEPERLTIME
-00004000 CLK_INTBIT
-00000001 CLK_LTIMEDIV
-00036ee8 CLK_LTIMEMULT
-000003e8 CLK_MICROSECS
-0000dbba CLK_PRD
-00000000 CLK_PRDHIGH
-01940000 CLK_REGS
-0000baf8 CLK_R_time
-00000020 CLK_TCR
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00003d00 CLK_TIMEFXN
-00000000 CLK_TIMERNUM
-00000001 CLK_USETIMER
-0000c4a0 CLK_null
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003df8 FXN_F_zero
-00000001 GBL$
-00005205 GBL_A_VERSION
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000001 GBL_CALLCSLCFGINIT
-00004e20 GBL_CLKIN
-00001770 GBL_CLKTYPE
-00001a39 GBL_DSPSUBTYPE
-0000003e GBL_DSPTYPE
-00000001 GBL_ENABLEINST
-00000042 GBL_FOOTPRINT
-00036ee8 GBL_FREQ
-00002226 GBL_L2ALLOC
-00000000 GBL_L2CONFIGALLOC
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-0000dbef GBL_TRCMASKVALUE
-00000001 GBL_USERINIT
-000060c8 GBL_USERINITFXN
-00000001 GBL_boot
-0000c498 GBL_initdone
-0000b5e0 GBL_stackbeg
-0000b9df GBL_stackend
-00000000 GIO$
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000001 HST$
-0000c39c HST_A_TABBEG
-0000c3d8 HST_A_TABEND
-00000000 HST_DSM
-ffffffff HST_DSMBUFSEG
-00000400 HST_DSMMEMSIZE
-0000bb74 HST_D_chanmask
-0000bb78 HST_D_tabbeg
-0000bb7c HST_D_tabend
-000000ff HST_MAXFRAMEALLOWED
-00000040 HST_MAXFRAMESET
-00000000 HST_NONE
-00000001 HST_RTDX
-00000001 HWI$
-00000000 HWI_A_VECS
-00004018 HWI_CFGDISPATCHED
-0000bca0 HWI_D_bss
-0000bca4 HWI_D_ccmask
-0000bc90 HWI_D_spsave
-00001320 HWI_F_dispatch
-00000000 HWI_GENERATE_RESET_VEC
-0000000a HWI_INT10
-00000000 HWI_INT10$hwi
-0000000b HWI_INT11
-00000000 HWI_INT11$hwi
-0000000c HWI_INT12
-00000000 HWI_INT12$hwi
-0000000d HWI_INT13
-00000000 HWI_INT13$hwi
-0000000e HWI_INT14
-00000000 HWI_INT14$hwi
-0000000f HWI_INT15
-00000000 HWI_INT15$hwi
-00000004 HWI_INT4
-00000000 HWI_INT4$hwi
-00000005 HWI_INT5
-00000000 HWI_INT5$hwi
-00000006 HWI_INT6
-00000000 HWI_INT6$hwi
-00000007 HWI_INT7
-00000000 HWI_INT7$hwi
-00000008 HWI_INT8
-00000000 HWI_INT8$hwi
-00000009 HWI_INT9
-00000000 HWI_INT9$hwi
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-00000001 HWI_NMI
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000002 HWI_RESERVED0
-00000000 HWI_RESERVED0$hwi
-00000003 HWI_RESERVED1
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000001 HWI_ZEROTAB
-00000001 IDL$
-0000bfec IDL_A_CALBEG
-0000adac IDL_A_TABBEG
-00000006 IDL_CALIBRERROR
-00004200 IDL_CALIBRFXN
-0000bd1c IDL_D_busyObj
-0000bae8 IDL_D_calbeg
-0000bae4 IDL_D_calibrate
-0000bae0 IDL_D_tabbeg
-0000adb8 IDL_END
-0000bff8 IDL_END$
-00003e20 IDL_F_busy
-00003fa0 IDL_F_calibrate
-00004340 IDL_F_loop
-00004200 IDL_F_stub
-00000001 IDL_USECLKIDLTIME
-0000c3fc IDL_busyObj
-0000c333 IDL_busyObj$avgfmt
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000000 IDL_busyObj$iB
-00000001 IDL_busyObj$iC
-0000c32d IDL_busyObj$maxfmt
-00000000 IDL_busyObj$operation
-0000c3f8 IDL_busyObj$stsobj
-0000c330 IDL_busyObj$sumfmt
-00000002 IDL_busyObj$unittype
-0000adac IDL_cpuLoad
-0000bfec IDL_cpuLoad$
-ffffffff IRAM
-00000001 ISRC$
-00002da0 KNL_glue
-0000c408 KNL_swi
-00000001 KNL_swi$dorta
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-0000c3dc KNL_swi$sts
-0000c309 KNL_swi$sts$avgfmt
-00000002 KNL_swi$sts$filter
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-0000c2f9 KNL_swi$sts$maxfmt
-0000c3d8 KNL_swi$sts$stsobj
-0000c301 KNL_swi$sts$sumfmt
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000001 LCK$
-00000200 LNK_F_checkBufferCall
-00000280 LNK_F_dataPump
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-000007c4 LNK_F_readCallBack
-0000adb0 LNK_dataPump
-0000bff0 LNK_dataPump$
-0000bcc4 LNK_dspFrameReadyMask
-0000bcc0 LNK_dspFrameRequestMask
-00000520 LNK_newin
-00000660 LNK_newout
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-0000bccc LNK_readDone
-0000bcd0 LNK_readFail
-0000bcc8 LNK_readPend
-00000370 LNK_rrloop
-0000bcd4 LNK_writeFail
-00000444 LNK_wrloop
-00000434 LNK_wrrtry
-00000001 LOG$
-0000c45c LOG_A_TABBEG
-0000c474 LOG_A_TABEND
-00000001 LOG_A_TABLEN
-0000baec LOG_D_system
-00000001 LOG_ENABLED
-00003ea0 LOG_F_event
-0000c45c LOG_system
-0000c000 LOG_system$buf
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000040 LOG_system$size
-00000000 MBX$
-00000001 MEM$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-0000bf24 PIP_A_TABBEG
-0000bfec PIP_A_TABEND
-00000002 PIP_A_TABLEN
-0000baf0 PIP_D_tabbeg
-0000baf4 PIP_D_tablen
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-000025c0 PIP_F_take
-00000064 PIP_OBJSIZE
-00000000 PIP_gNextId
-00000002 PIP_gNumEmbed
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000001 PRD$
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-0000bb30 PRD_D_cur
-0000bb34 PRD_D_elapsed
-0000bb38 PRD_D_prevtim
-0000bb3c PRD_D_scalar
-0000bb40 PRD_D_swihandle
-0000bb44 PRD_D_tabbeg
-0000bb48 PRD_D_tablen
-0000bb4c PRD_D_thook
-0000bb2c PRD_D_tick
-00001780 PRD_F_swi
-00001a40 PRD_F_tick
-00004000 PRD_SCALAR
-00000000 PRD_SWIHANDLE
-000025a0 PRD_THOOKFXN
-0000c49c PRD_clock
-00000001 QUE$
-0000bb50 RTA_D_fromHost
-0000bb58 RTA_D_logval
-0000bb68 RTA_D_stsval
-0000bb54 RTA_D_toHost
-00004240 RTA_F_andn
-00001ed8 RTA_F_dispatch
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00004260 RTA_F_or
-00001e6c RTA_F_readblk
-00001e98 RTA_F_resetmem
-00001e8c RTA_F_writeword
-0000adb4 RTA_dispatcher
-0000bff4 RTA_dispatcher$
-00001f28 RTA_execute
-0000c3a0 RTA_fromHost
-00009ab0 RTA_fromHost$buf
-00000004 RTA_fromHost$framesize
-00000000 RTA_fromHost$hst
-00000001 RTA_fromHost$id
-00000000 RTA_fromHost$mode
-0000bf24 RTA_fromHost$pipe
-0000bf54 RTA_fromHost$pipe$aaa
-0000bf84 RTA_fromHost$pipe$bbb
-0000bca8 RTA_fromHost$pipe$dtab
-0000bf28 RTA_fromHost$pipe$rd
-0000bf58 RTA_fromHost$pipe$wr
-0000c3a8 RTA_fromHost$rtdx
-0000c3bc RTA_toHost
-0000c100 RTA_toHost$buf
-00000040 RTA_toHost$framesize
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000001 RTA_toHost$mode
-0000bf88 RTA_toHost$pipe
-0000bfb8 RTA_toHost$pipe$aaa
-0000bfe8 RTA_toHost$pipe$bbb
-0000bcb4 RTA_toHost$pipe$dtab
-0000bf8c RTA_toHost$pipe$rd
-0000bfbc RTA_toHost$pipe$wr
-0000c3c4 RTA_toHost$rtdx
-00000001 RTDX$
-00000408 RTDX_BUFMEMSIZE
-ffffffff RTDX_DATAMEMSEG
-00000000 RTDX_MODE
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000000 RTDX_USERTEXECUTION
-ffffffff SDRAM
-00000000 SEM$
-00000000 SIO$
-00000001 STS$
-0000c3d8 STS_A_TABBEG
-0000c408 STS_A_TABEND
-00003f58 STS_F_add
-00003f20 STS_F_delta
-00003f84 STS_F_reset
-00000001 SWI$
-0000c408 SWI_A_TABBEG
-0000c434 SWI_A_TABEND
-00000001 SWI_A_TABLEN
-0000bbc4 SWI_D_curfxn
-0000bbb4 SWI_D_curmask
-0000bbc0 SWI_D_curmbox
-0000bbb8 SWI_D_curset
-0000bbb0 SWI_D_execaddr
-0000bbcc SWI_D_inswi
-0000bbbc SWI_D_lock
-0000bbc8 SWI_D_rdybeg
-0000bbd0 SWI_D_rdytab
-0000bbac SWI_D_runaddr
-00000000 SWI_EHOOKFXN
-00000ffc SWI_EXECFXN
-00000de0 SWI_F_enable
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00000e50 SWI_F_post
-000010b8 SWI_F_run
-00000000 SWI_IHOOKFXN
-000010b8 SWI_RUNFXN
-00000001 SYS$
-0000c474 SYS$config
-00004280 SYS_ABORTFXN
-00004380 SYS_ERRORFXN
-000043a0 SYS_EXITFXN
-00004140 SYS_PUTCFXN
-0000c494 TRC_R_mask
-0000c490 TRC_cinit
-00000001 TSK$
-00000000 TSK_NUM_HOOKS
-00000001 TSK_PRIORITY
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000400 TSK_STACKSIZE
-00000000 TSK_SWITCHFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-0000c308 TSK_idle
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-0000b1e0 TSK_idle$stack
-0000b578 TSK_idle$stkptr
-0000c3ec TSK_idle$sts
-0000c323 TSK_idle$sts$avgfmt
-00000002 TSK_idle$sts$filter
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-0000c313 TSK_idle$sts$maxfmt
-0000c3e8 TSK_idle$sts$stsobj
-0000c31b TSK_idle$sts$sumfmt
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-0000adc0 _BIOS_init
-0000afcc _BIOS_start
-0000dbba _CLK_COUNTSPMS
-0000bcf4 _CLK_DFLTMICROSECS
-0000bb28 _CLK_D_countspms
-0000bb1c _CLK_D_dirty
-0000bcf8 _CLK_D_microseconds
-0000bb20 _CLK_D_prd
-0000bb24 _CLK_D_tddr
-00002f54 _CLK_F_itime
-0000dbba _CLK_PRD
-01940000 _CLK_REGS
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000001 _CLK_USETIMER
-0000bb0c _CLK_htimeDiv
-0000bb10 _CLK_htimeMult
-0000bd14 _CLK_htimePerLtime
-00002f54 _CLK_itime
-0000bb14 _CLK_ltimeDiv
-0000bb18 _CLK_ltimeMult
-00003900 _CLK_measure
-000041a0 _CLK_start
-000042c0 _CLK_stop
-00009578 _Config
-0000bd04 _DSK6713_AIC23_codeccontrolhandle
-0000bd08 _DSK6713_AIC23_codecdatahandle
-0000630c _DSK6713_AIC23_config
-00005820 _DSK6713_AIC23_openCodec
-000062e8 _DSK6713_AIC23_rget
-00006220 _DSK6713_AIC23_rset
-00004e40 _DSK6713_getVersion
-00004e90 _DSK6713_init
-00004dac _DSK6713_rget
-00004d98 _DSK6713_rset
-0000bd20 _DSK6713_version
-00004cc0 _DSK6713_wait
-00004d64 _DSK6713_waitusec
-00004300 _FXN_F_nop
-00003da8 _FXN_F_run
-00003df8 _FXN_F_zero
-00000000 _GBL_CACHE
-0000bb84 _GBL_clkIn
-00003580 _GBL_cslCacheInit
-0000bb88 _GBL_freq
-00004320 _GBL_getVersion
-0000bb80 _GBL_procId
-000060c8 _GBL_setPLLto225MHz
-0000c39c _HST_A_TABBEG
-0000c3d8 _HST_A_TABEND
-00004018 _HWI_CFGDISPATCHED
-0000bc9c _HWI_D_inhwi
-0000bc90 _HWI_D_spsave
-00001320 _HWI_F_dispatch
-0000000a _HWI_INT10
-0000000b _HWI_INT11
-0000000c _HWI_INT12
-0000000d _HWI_INT13
-0000000e _HWI_INT14
-0000000f _HWI_INT15
-00000004 _HWI_INT4
-00000005 _HWI_INT5
-00000006 _HWI_INT6
-00000007 _HWI_INT7
-00000008 _HWI_INT8
-00000009 _HWI_INT9
-00000001 _HWI_NMI
-00000002 _HWI_RESERVED0
-00000003 _HWI_RESERVED1
-00000000 _HWI_RESET
-0000b9d8 _HWI_STKBOTTOM
-0000b5e0 _HWI_STKTOP
-0000bc90 _HWI_data
-00004020 _HWI_disable
-0000b9e0 _HWI_dispatchTab
-00004038 _HWI_enable
-0000404c _HWI_restore
-0000bd10 _H_Codec
-0000c3fc _IDL_busyObj
-0000adac _IDL_cpuLoad
-00004340 _IDL_loop
-ffffffff _IRAM
-00006ce0 _IRQ_enable
-00006da0 _IRQ_globalDisable
-00006dc0 _IRQ_globalEnable
-00005d40 _IRQ_map
-00006de0 _IRQ_nmiEnable
-00005648 _ISR_AIC
-0000bc50 _KNL_alarm
-00003440 _KNL_check
-0000bc74 _KNL_curqueue
-0000bc64 _KNL_curtask
-0000bc6c _KNL_curtime
-000098bc _KNL_dummy
-000036b4 _KNL_enter
-00003660 _KNL_exit
-00003518 _KNL_idle
-0000bc8c _KNL_idlefxn
-0000bc58 _KNL_inactive
-000039e0 _KNL_ipost
-0000353c _KNL_max
-0000bc78 _KNL_maxqueue
-00003aa0 _KNL_post
-0000bc68 _KNL_prevtask
-0000bc5c _KNL_priority
-0000981c _KNL_queues
-00001b20 _KNL_run
-00002c20 _KNL_saveIsrFrame
-0000bc60 _KNL_set
-0000bc54 _KNL_setpri
-0000c408 _KNL_swi
-0000bc70 _KNL_swiptr
-00002cec _KNL_switch
-0000bc80 _KNL_tcreatefxn
-0000bc84 _KNL_tdeletefxn
-000025a0 _KNL_tick
-0000bc88 _KNL_treadyfxn
-0000bc7c _KNL_tswitchfxn
-0000bc48 _KNL_wFlag
-0000bc4c _KNL_wList
-00003b90 _LCK_pend
-00003b60 _LCK_post
-0000adb0 _LNK_dataPump
-0000bcc4 _LNK_dspFrameReadyMask
-0000bcc0 _LNK_dspFrameRequestMask
-0000bccc _LNK_readDone
-0000bcd0 _LNK_readFail
-0000bcc8 _LNK_readPend
-0000bcd4 _LNK_writeFail
-0000c45c _LOG_A_TABBEG
-0000c474 _LOG_A_TABEND
-00000001 _LOG_A_TABLEN
-0000baec _LOG_D_system
-00003ea0 _LOG_event
-0000c45c _LOG_system
-00006600 _MCBSP_open
-00005f00 _MCBSP_reset
-00006700 _MCBSP_start
-0000bb8c _MEM_D_NUMSEGMENTS
-0000bb94 _MEM_D_freelist
-0000bb98 _MEM_D_lockaddr
-0000bb90 _MEM_D_memtab
-0000bb9c _MEM_D_unlockaddr
-00000000 _MEM_memtab
-0000b1c0 _OBJ_init
-00009988 _OBJ_segtab
-00009950 _OBJ_table
-0000bf24 _PIP_A_TABBEG
-0000bfec _PIP_A_TABEND
-0000bb2c _PRD_D_tick
-0000c49c _PRD_clock
-0000adb4 _RTA_dispatcher
-0000c3a0 _RTA_fromHost
-0000c3bc _RTA_toHost
-0000a960 _RTDX_Buffer
-0000ad6c _RTDX_Buffer_End
-0000a7a0 _RTDX_Buffer_Initialize
-0000a8e0 _RTDX_Buffer_Read
-0000a800 _RTDX_Buffer_ReadCB
-0000a860 _RTDX_Buffer_Size
-0000ad68 _RTDX_Buffer_Start
-0000a900 _RTDX_Buffer_Write
-00009ec0 _RTDX_Buffer_WriteCB
-0000a8a0 _RTDX_Final_RT_Monitor
-0000a720 _RTDX_Init_RT_Monitor
-00000002 _RTDX_JTAGONLY
-0000a940 _RTDX_Mask_IER
-0000a500 _RTDX_Mon_Queue
-00009ac0 _RTDX_Poll
-00000000 _RTDX_interrupt_mask
-0000ad7c _RTDX_writing
-ffffffff _SDRAM
-00004080 _SEM_pend
-000020a0 _SEM_pendEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003740 _SEM_postEnterKnl
-0000c3d8 _STS_A_TABBEG
-0000c408 _STS_A_TABEND
-00003f58 _STS_add
-00003f20 _STS_delta
-00003f84 _STS_reset
-00004360 _STS_set
-0000bbc4 _SWI_D_curfxn
-0000bbb4 _SWI_D_curmask
-0000bbb8 _SWI_D_curset
-0000bbb0 _SWI_D_execaddr
-0000bbcc _SWI_D_inswi
-0000bbbc _SWI_D_lock
-0000bbc8 _SWI_D_rdybeg
-0000bbac _SWI_D_runaddr
-0000bbac _SWI_data
-00000e50 _SWI_post
-0000bba0 _SYS
-0000bd24 _SYS_PUTCBEG
-0000bf23 _SYS_PUTCEND
-000040e0 _SYS_abort
-00003c20 _SYS_exit
-00009a54 _SYS_exitStack
-0000bcfc _SYS_exitStackPtr
-0000bd00 _SYS_exitStackTop
-0000c494 _TRC_R_mask
-0000bcf0 _TSK
-000098f4 _TSK_ATTRS
-00009910 _TSK_config
-00002fa0 _TSK_exit
-0000c308 _TSK_idle
-0000b140 _TSK_init
-0000bce8 _TSK_nTasks
-0000bcec _TSK_pid
-00002a20 _TSK_setup
-00003380 _TSK_startup
-00009930 _TSK_timerSem
-00004280 _UTL_doAbort
-00004380 _UTL_doError
-00004140 _UTL_doPutc
-000043a0 _UTL_halt
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00000c34 __GBL_setL2CacheMode
-0000bba8 __HOOK_NUMHOOKS
-0000bba4 __HOOK_knlId
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-00001640 __HWI_lat2end1
-000015cc __HWI_lat2end2
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-000015fc __HWI_lat3end2
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00009814 __IRQ_dispatchTable
-00009750 __IRQ_eventTable
-00006e60 __IRQ_hookFetchPacket
-000097d4 __IRQ_intTable
-00003490 __KNL_lat1beg
-00003518 __KNL_lat1end
-00003ea0 __LOG_lat1beg
-00009a24 __MCBSP_hDev0
-00009a28 __MCBSP_hDev1
-000099cc __MEM_mutex
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00002800 __SEM_dopost
-00000400 __STACK_SIZE
-00000f8c __SWI_lat1beg
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-000099a4 __TSK_mutex
-00009a98 ___TI_enable_exit_profile_output
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-00006d20 ___add_dtor
-000095a0 ___atexit_func_id__
-ffffffff ___binit__
-0000b9e0 ___bss__
-ffffffff ___c_args__
-00006e80 ___cinit__
-00000000 ___data__
-00000000 ___edata__
-0000bd22 ___end__
-00006e80 ___etext__
-0000c484 ___pinit__
-000043c0 ___text__
-00003140 __auto_init
-00009a90 __cleanup_ptr
-000043c0 __divd
-00009a94 __dtors_ptr
-00005140 __frcmpyd_div
-00009a9c __lock
-00006ba0 __mpyll
-00006e00 __nop
-00006e20 __register_lock
-00006e40 __register_unlock
-00006800 __remi
-0000b5e0 __stack
-000063a0 __strasgi
-00009aa0 __unlock
-00006900 _atexit
-000085e8 _b
-00008db0 _buffer
-0000b080 _c_int00
-000064e0 _call_dtors
-00005708 _circ_fir
-00009aac _dtors
-000055b0 _init_HWI
-000054ec _init_hardware
-000054c0 _main
-00005b00 _memcpy
-00006a7c _mono_read_16Bit
-00006a54 _mono_write_16Bit
-0000bd0c _ptr
-0000bce0 _rtdxNullChanCnt
-0000bce4 _rtdxNullFuncCnt
-0000ad70 _rtdx_buffer_state
-0000ad90 _rtdx_mon_state
-00006a28 _stereo_read_16Bit
-00006a00 _stereo_write_16Bit
-000060a0 _wait500nS
-ffffffff binit
-00006e80 cinit
-00000000 edata
-0000bd22 end
-00006e80 etext
-00000000 hwi0
-00000020 hwi1
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000040 hwi2
-00000060 hwi3
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-00000100 hwi8
-00000120 hwi9
-0000c484 pinit
-
-
-GLOBAL SYMBOLS: SORTED BY Symbol Address
-
-address name
--------- ----
-00000000 .data
-00000000 BUF$
-00000000 CLK_COUNTSPMSHIGH
-00000000 CLK_PRDHIGH
-00000000 CLK_TDDR
-00000000 CLK_TDDRHIGH
-00000000 CLK_TIMERNUM
-00000000 DEV$
-00000000 DGN$
-00000000 DHL$
-00000000 DHL_gChannelsAvailable
-00000000 DIO$
-00000000 DIO_NUMSWIBASE
-00000000 DIO_NUMTSKBASE
-00000000 DIO_STATIC
-00000000 DPI$
-00000000 GBL_BIGENDIAN
-00000000 GBL_C641XL2PRIORITY
-00000000 GBL_CACHE
-00000000 GBL_L2CONFIGALLOC
-00000000 GBL_L2MARMASK1
-00000000 GBL_L2MARMASK2
-00000000 GBL_L2MARMASK3
-00000000 GBL_L2MARMASK4
-00000000 GBL_L2MARMASK5
-00000000 GBL_L2MODE
-00000000 GBL_L2PRIORITY
-00000000 GBL_NULL
-00000000 GBL_PROCID
-00000000 GBL_ROM
-00000000 GBL_SUPPORTCSL
-00000000 GIO$
-00000000 HOOK$
-00000000 HOOK_KNLID
-00000000 HST_DSM
-00000000 HST_NONE
-00000000 HWI_A_VECS
-00000000 HWI_GENERATE_RESET_VEC
-00000000 HWI_INT10$hwi
-00000000 HWI_INT11$hwi
-00000000 HWI_INT12$hwi
-00000000 HWI_INT13$hwi
-00000000 HWI_INT14$hwi
-00000000 HWI_INT15$hwi
-00000000 HWI_INT4$hwi
-00000000 HWI_INT5$hwi
-00000000 HWI_INT6$hwi
-00000000 HWI_INT7$hwi
-00000000 HWI_INT8$hwi
-00000000 HWI_INT9$hwi
-00000000 HWI_NMI$hwi
-00000000 HWI_POLARITYMASK
-00000000 HWI_RESERVED0$hwi
-00000000 HWI_RESERVED1$hwi
-00000000 HWI_RESET
-00000000 HWI_RESET$hwi
-00000000 IDL_busyObj$iB
-00000000 IDL_busyObj$operation
-00000000 KNL_swi$ord
-00000000 KNL_swi$pri
-00000000 KNL_swi$sts$unittype
-00000000 KNL_swi$swi
-00000000 LOG_system$datatype
-00000000 LOG_system$log
-00000000 MBX$
-00000000 MEM_MALLOCSEG
-00000000 MEM_NULL
-00000000 MEM_SEGZERO
-00000000 MEM_USEMPC
-00000000 MEM_gNumHeap
-00000000 MSGQ$
-00000000 MSGQ_USEMSGQ
-00000000 OBJ$
-00000000 PIP$
-00000000 PIP_gNextId
-00000000 POOL$
-00000000 POOL_USEPOOL
-00000000 PRD_A_TABBEG
-00000000 PRD_A_TABEND
-00000000 PRD_A_TABLEN
-00000000 PRD_SWIHANDLE
-00000000 RTA_fromHost$hst
-00000000 RTA_fromHost$mode
-00000000 RTA_toHost$hst
-00000000 RTA_toHost$id
-00000000 RTDX_MODE
-00000000 RTDX_USERTEXECUTION
-00000000 SEM$
-00000000 SIO$
-00000000 SWI_EHOOKFXN
-00000000 SWI_IHOOKFXN
-00000000 TSK_NUM_HOOKS
-00000000 TSK_READYFXN
-00000000 TSK_STACKSEG
-00000000 TSK_SWITCHFXN
-00000000 TSK_idle$ord
-00000000 TSK_idle$pri
-00000000 TSK_idle$sts$unittype
-00000000 TSK_idle$tsk
-00000000 UDEV$
-00000000 _CLK_TDDR
-00000000 _CLK_TIMERNUM
-00000000 _GBL_CACHE
-00000000 _HWI_RESET
-00000000 _MEM_memtab
-00000000 _RTDX_interrupt_mask
-00000000 ___data__
-00000000 ___edata__
-00000000 edata
-00000000 hwi0
-00000001 BUF_ENABLED
-00000001 CLK$
-00000001 CLK_CALDIV
-00000001 CLK_HTIMEDIV
-00000001 CLK_LTIMEDIV
-00000001 CLK_USETIMER
-00000001 GBL$
-00000001 GBL_CALLCSLCFGINIT
-00000001 GBL_ENABLEINST
-00000001 GBL_L2CONFIGURE
-00000001 GBL_L2MARMASK
-00000001 GBL_USERINIT
-00000001 GBL_boot
-00000001 HST$
-00000001 HST_RTDX
-00000001 HWI$
-00000001 HWI_NMI
-00000001 HWI_ZEROTAB
-00000001 IDL$
-00000001 IDL_USECLKIDLTIME
-00000001 IDL_busyObj$filter
-00000001 IDL_busyObj$iA
-00000001 IDL_busyObj$iC
-00000001 ISRC$
-00000001 KNL_swi$dorta
-00000001 KNL_swi$sts$filtmaxmult
-00000001 KNL_swi$sts$filtsummult
-00000001 LCK$
-00000001 LOG$
-00000001 LOG_A_TABLEN
-00000001 LOG_ENABLED
-00000001 MEM$
-00000001 PRD$
-00000001 QUE$
-00000001 RTA_fromHost$id
-00000001 RTA_toHost$mode
-00000001 RTDX$
-00000001 RTDX_NORMALIZED_HDR
-00000001 RTDX_USERTDX
-00000001 STS$
-00000001 SWI$
-00000001 SWI_A_TABLEN
-00000001 SYS$
-00000001 TSK$
-00000001 TSK_PRIORITY
-00000001 TSK_idle$sts$filtmaxmult
-00000001 TSK_idle$sts$filtsummult
-00000001 _CLK_USETIMER
-00000001 _HWI_NMI
-00000001 _LOG_A_TABLEN
-00000002 HWI_RESERVED0
-00000002 IDL_busyObj$unittype
-00000002 KNL_swi$sts$filter
-00000002 PIP_A_TABLEN
-00000002 PIP_gNumEmbed
-00000002 TSK_idle$sts$filter
-00000002 _HWI_RESERVED0
-00000002 _RTDX_JTAGONLY
-00000003 HWI_RESERVED1
-00000003 _HWI_RESERVED1
-00000004 CLK_CALMULT
-00000004 CLK_HTIMEMULT
-00000004 HWI_INT4
-00000004 RTA_fromHost$framesize
-00000004 _HWI_INT4
-00000005 HWI_INT5
-00000005 _HWI_INT5
-00000006 HWI_INT6
-00000006 IDL_CALIBRERROR
-00000006 _HWI_INT6
-00000007 HWI_INT7
-00000007 _HWI_INT7
-00000008 HWI_INT8
-00000008 _HWI_INT8
-00000009 HWI_INT9
-00000009 _HWI_INT9
-0000000a HWI_INT10
-0000000a _HWI_INT10
-0000000b HWI_INT11
-0000000b _HWI_INT11
-0000000c HWI_INT12
-0000000c _HWI_INT12
-0000000d HWI_INT13
-0000000d _HWI_INT13
-0000000e HWI_INT14
-0000000e _HWI_INT14
-0000000f HWI_INT15
-0000000f _HWI_INT15
-00000020 CLK_TCR
-00000020 hwi1
-0000003e GBL_DSPTYPE
-00000040 HST_MAXFRAMESET
-00000040 LOG_system$size
-00000040 RTA_toHost$framesize
-00000040 hwi2
-00000042 GBL_FOOTPRINT
-00000060 hwi3
-00000064 PIP_OBJSIZE
-00000080 hwi4
-000000a0 hwi5
-000000c0 hwi6
-000000e0 hwi7
-000000ff HST_MAXFRAMEALLOWED
-00000100 hwi8
-00000120 hwi9
-00000140 hwi10
-00000160 hwi11
-00000180 hwi12
-000001a0 hwi13
-000001c0 hwi14
-000001e0 hwi15
-00000200 LNK_F_checkBufferCall
-00000220 LNK_F_getChanPtr
-00000278 LNK_F_init
-00000280 LNK_F_dataPump
-00000294 LNK_rcloop
-00000360 LNK_rdrtry
-00000370 LNK_rrloop
-000003e8 CLK_MICROSECS
-00000400 HST_DSMMEMSIZE
-00000400 TSK_STACKSIZE
-00000400 __STACK_SIZE
-00000408 RTDX_BUFMEMSIZE
-00000434 LNK_wrrtry
-00000444 LNK_wrloop
-00000520 LNK_newin
-00000660 LNK_newout
-000007c4 LNK_F_readCallBack
-00000c34 __GBL_setL2CacheMode
-00000de0 SWI_F_enable
-00000de0 __SWI_lat3beg
-00000e4c __SWI_lat3end
-00000e50 SWI_F_post
-00000e50 _SWI_post
-00000f8c __SWI_lat1beg
-00000ffc SWI_EXECFXN
-00000ffc SWI_F_exec
-00001028 SWI_F_iexec
-00001040 __SWI_lat1end
-00001044 __SWI_lat2beg
-000010b4 __SWI_lat2end
-000010b8 SWI_F_run
-000010b8 SWI_RUNFXN
-00001320 CLK_HOOKFXN
-00001320 HWI_F_dispatch
-00001320 _HWI_F_dispatch
-00001320 __HWI_lat1beg
-000014a0 __HWI_lat1end
-000014a0 __HWI_lat2beg
-000015cc __HWI_lat2end2
-000015fc __HWI_lat3end2
-00001640 __HWI_lat2end1
-00001660 __HWI_lat3beg
-00001760 __HWI_lat3end1
-00001770 GBL_CLKTYPE
-00001780 PRD_F_swi
-00001a39 GBL_DSPSUBTYPE
-00001a40 PRD_F_tick
-00001b20 _KNL_run
-00001de0 RTA_F_getlog
-00001e24 RTA_F_getsts
-00001e6c RTA_F_readblk
-00001e8c RTA_F_writeword
-00001e98 RTA_F_resetmem
-00001e98 __RTA_lat1beg
-00001ed0 __RTA_lat1end
-00001ed8 RTA_F_dispatch
-00001f28 RTA_execute
-000020a0 _SEM_pendEnterKnl
-00002226 GBL_L2ALLOC
-000025a0 PRD_THOOKFXN
-000025a0 _KNL_tick
-000025c0 PIP_F_take
-00002654 PIP_F_give
-00002654 PIP_F_probe
-00002728 PIP_F_start
-00002800 __SEM_dopost
-00002a20 _TSK_setup
-00002c20 _KNL_saveIsrFrame
-00002cec _KNL_switch
-00002da0 KNL_glue
-00002de0 CLK_F_getltime
-00002df4 CLK_F_isr
-00002f54 CLK_F_itime
-00002f54 _CLK_F_itime
-00002f54 _CLK_itime
-00002f70 __CLK_lat1beg
-00002f9c __CLK_lat1end
-00002fa0 _TSK_exit
-00003140 __auto_init
-00003380 _TSK_startup
-00003440 _KNL_check
-00003490 __KNL_lat1beg
-00003518 _KNL_idle
-00003518 __KNL_lat1end
-0000353c _KNL_max
-00003580 _GBL_cslCacheInit
-00003660 _KNL_exit
-000036b4 _KNL_enter
-00003740 _SEM_postEnterKnl
-00003820 _SEM_post
-00003820 _SEM_postBinary
-00003900 _CLK_measure
-000039e0 _KNL_ipost
-00003aa0 _KNL_post
-00003b60 _LCK_post
-00003b90 _LCK_pend
-00003c20 _SYS_exit
-00003ce0 CLK_F_getfhtime
-00003d00 CLK_F_gethtime
-00003d00 CLK_F_getshtime
-00003d00 CLK_TIMEFXN
-00003da0 FXN_F_nop
-00003da8 FXN_F_run
-00003da8 _FXN_F_run
-00003df8 FXN_F_zero
-00003df8 _FXN_F_zero
-00003e20 IDL_F_busy
-00003e20 __IDL_lat1beg
-00003e70 __IDL_lat1end
-00003ea0 LOG_F_event
-00003ea0 _LOG_event
-00003ea0 __LOG_lat1beg
-00003f20 STS_F_delta
-00003f20 _STS_delta
-00003f58 STS_F_add
-00003f58 _STS_add
-00003f84 STS_F_reset
-00003f84 _STS_reset
-00003fa0 IDL_F_calibrate
-00004000 CLK_INTBIT
-00004000 PRD_SCALAR
-00004018 HWI_CFGDISPATCHED
-00004018 _HWI_CFGDISPATCHED
-00004020 _HWI_disable
-00004038 _HWI_enable
-0000404c _HWI_restore
-00004080 _SEM_pend
-000040e0 _SYS_abort
-00004140 SYS_PUTCFXN
-00004140 _UTL_doPutc
-000041a0 _CLK_start
-00004200 IDL_CALIBRFXN
-00004200 IDL_F_stub
-00004240 RTA_F_andn
-00004260 RTA_F_or
-00004280 SYS_ABORTFXN
-00004280 _UTL_doAbort
-000042c0 _CLK_stop
-00004300 GIO_CREATEFXN
-00004300 GIO_DELETEFXN
-00004300 GIO_PENDFXN
-00004300 GIO_POSTFXN
-00004300 TSK_VCREATEFXN
-00004300 TSK_VDELETEFXN
-00004300 TSK_VEXITFXN
-00004300 _FXN_F_nop
-00004320 _GBL_getVersion
-00004340 IDL_F_loop
-00004340 _IDL_loop
-00004360 _STS_set
-00004380 SYS_ERRORFXN
-00004380 _UTL_doError
-000043a0 SYS_EXITFXN
-000043a0 _UTL_halt
-000043c0 .text
-000043c0 ___text__
-000043c0 __divd
-00004cc0 _DSK6713_wait
-00004d64 _DSK6713_waitusec
-00004d98 _DSK6713_rset
-00004dac _DSK6713_rget
-00004e20 GBL_CLKIN
-00004e40 _DSK6713_getVersion
-00004e90 _DSK6713_init
-00005140 __frcmpyd_div
-00005205 GBL_A_VERSION
-000054c0 _main
-000054ec _init_hardware
-000055b0 _init_HWI
-00005648 _ISR_AIC
-00005708 _circ_fir
-00005820 _DSK6713_AIC23_openCodec
-00005b00 _memcpy
-00005d40 _IRQ_map
-00005f00 _MCBSP_reset
-000060a0 _wait500nS
-000060c8 GBL_USERINITFXN
-000060c8 _GBL_setPLLto225MHz
-00006220 _DSK6713_AIC23_rset
-000062e8 _DSK6713_AIC23_rget
-0000630c _DSK6713_AIC23_config
-000063a0 __strasgi
-000064e0 _call_dtors
-00006600 _MCBSP_open
-00006700 _MCBSP_start
-00006800 __remi
-00006900 _atexit
-00006a00 _stereo_write_16Bit
-00006a28 _stereo_read_16Bit
-00006a54 _mono_write_16Bit
-00006a7c _mono_read_16Bit
-00006ba0 __mpyll
-00006ce0 _IRQ_enable
-00006d20 ___add_dtor
-00006da0 _IRQ_globalDisable
-00006dc0 _IRQ_globalEnable
-00006de0 _IRQ_nmiEnable
-00006e00 __nop
-00006e20 __register_lock
-00006e40 __register_unlock
-00006e60 __IRQ_hookFetchPacket
-00006e80 ___cinit__
-00006e80 ___etext__
-00006e80 cinit
-00006e80 etext
-000085e8 _b
-00008db0 _buffer
-00009578 _Config
-000095a0 ___atexit_func_id__
-00009750 __IRQ_eventTable
-000097d4 __IRQ_intTable
-00009814 __IRQ_dispatchTable
-0000981c _KNL_queues
-000098bc _KNL_dummy
-000098f4 _TSK_ATTRS
-00009910 _TSK_config
-00009930 _TSK_timerSem
-00009950 _OBJ_table
-00009988 _OBJ_segtab
-000099a4 __TSK_mutex
-000099cc __MEM_mutex
-00009a24 __MCBSP_hDev0
-00009a28 __MCBSP_hDev1
-00009a54 _SYS_exitStack
-00009a90 __cleanup_ptr
-00009a94 __dtors_ptr
-00009a98 ___TI_enable_exit_profile_output
-00009a9c __lock
-00009aa0 __unlock
-00009aac _dtors
-00009ab0 RTA_fromHost$buf
-00009ac0 _RTDX_Poll
-00009ec0 _RTDX_Buffer_WriteCB
-0000a500 _RTDX_Mon_Queue
-0000a720 _RTDX_Init_RT_Monitor
-0000a7a0 _RTDX_Buffer_Initialize
-0000a800 _RTDX_Buffer_ReadCB
-0000a860 _RTDX_Buffer_Size
-0000a8a0 _RTDX_Final_RT_Monitor
-0000a8e0 _RTDX_Buffer_Read
-0000a900 _RTDX_Buffer_Write
-0000a940 _RTDX_Mask_IER
-0000a960 _RTDX_Buffer
-0000ad68 _RTDX_Buffer_Start
-0000ad6c _RTDX_Buffer_End
-0000ad70 _rtdx_buffer_state
-0000ad7c _RTDX_writing
-0000ad90 _rtdx_mon_state
-0000adac IDL_A_TABBEG
-0000adac IDL_cpuLoad
-0000adac _IDL_cpuLoad
-0000adb0 LNK_dataPump
-0000adb0 _LNK_dataPump
-0000adb4 RTA_dispatcher
-0000adb4 _RTA_dispatcher
-0000adb8 IDL_END
-0000adc0 BIOS_init
-0000adc0 _BIOS_init
-0000af24 BIOS$$CLKON
-0000af64 BIOS$$CLKOFF
-0000afcc BIOS_start
-0000afcc _BIOS_start
-0000b080 _c_int00
-0000b140 _TSK_init
-0000b1c0 _OBJ_init
-0000b1e0 TSK_idle$stack
-0000b578 TSK_idle$stkptr
-0000b5e0 GBL_stackbeg
-0000b5e0 _HWI_STKTOP
-0000b5e0 __stack
-0000b9d8 _HWI_STKBOTTOM
-0000b9df GBL_stackend
-0000b9e0 $bss
-0000b9e0 .bss
-0000b9e0 _HWI_dispatchTab
-0000b9e0 ___bss__
-0000bae0 IDL_D_tabbeg
-0000bae4 IDL_D_calibrate
-0000bae8 IDL_D_calbeg
-0000baec LOG_D_system
-0000baec _LOG_D_system
-0000baf0 PIP_D_tabbeg
-0000baf4 PIP_D_tablen
-0000baf8 CLK_R_time
-0000bafc CLK_D_timefxn
-0000bb00 CLK_D_tabbeg
-0000bb04 CLK_D_isrhook
-0000bb08 CLK_D_idletime
-0000bb0c _CLK_htimeDiv
-0000bb10 _CLK_htimeMult
-0000bb14 _CLK_ltimeDiv
-0000bb18 _CLK_ltimeMult
-0000bb1c _CLK_D_dirty
-0000bb20 _CLK_D_prd
-0000bb24 _CLK_D_tddr
-0000bb28 _CLK_D_countspms
-0000bb2c PRD_D_tick
-0000bb2c _PRD_D_tick
-0000bb30 PRD_D_cur
-0000bb34 PRD_D_elapsed
-0000bb38 PRD_D_prevtim
-0000bb3c PRD_D_scalar
-0000bb40 PRD_D_swihandle
-0000bb44 PRD_D_tabbeg
-0000bb48 PRD_D_tablen
-0000bb4c PRD_D_thook
-0000bb50 RTA_D_fromHost
-0000bb54 RTA_D_toHost
-0000bb58 RTA_D_logval
-0000bb68 RTA_D_stsval
-0000bb74 HST_D_chanmask
-0000bb78 HST_D_tabbeg
-0000bb7c HST_D_tabend
-0000bb80 _GBL_procId
-0000bb84 _GBL_clkIn
-0000bb88 _GBL_freq
-0000bb8c _MEM_D_NUMSEGMENTS
-0000bb90 _MEM_D_memtab
-0000bb94 _MEM_D_freelist
-0000bb98 _MEM_D_lockaddr
-0000bb9c _MEM_D_unlockaddr
-0000bba0 _SYS
-0000bba4 __HOOK_knlId
-0000bba8 __HOOK_NUMHOOKS
-0000bbac SWI_D_runaddr
-0000bbac _SWI_D_runaddr
-0000bbac _SWI_data
-0000bbb0 SWI_D_execaddr
-0000bbb0 _SWI_D_execaddr
-0000bbb4 SWI_D_curmask
-0000bbb4 _SWI_D_curmask
-0000bbb8 SWI_D_curset
-0000bbb8 _SWI_D_curset
-0000bbbc SWI_D_lock
-0000bbbc _SWI_D_lock
-0000bbc0 SWI_D_curmbox
-0000bbc4 SWI_D_curfxn
-0000bbc4 _SWI_D_curfxn
-0000bbc8 SWI_D_rdybeg
-0000bbc8 _SWI_D_rdybeg
-0000bbcc SWI_D_inswi
-0000bbcc _SWI_D_inswi
-0000bbd0 SWI_D_rdytab
-0000bc48 _KNL_wFlag
-0000bc4c _KNL_wList
-0000bc50 _KNL_alarm
-0000bc54 _KNL_setpri
-0000bc58 _KNL_inactive
-0000bc5c _KNL_priority
-0000bc60 _KNL_set
-0000bc64 _KNL_curtask
-0000bc68 _KNL_prevtask
-0000bc6c _KNL_curtime
-0000bc70 _KNL_swiptr
-0000bc74 _KNL_curqueue
-0000bc78 _KNL_maxqueue
-0000bc7c _KNL_tswitchfxn
-0000bc80 _KNL_tcreatefxn
-0000bc84 _KNL_tdeletefxn
-0000bc88 _KNL_treadyfxn
-0000bc8c _KNL_idlefxn
-0000bc90 HWI_D_spsave
-0000bc90 _HWI_D_spsave
-0000bc90 _HWI_data
-0000bc9c _HWI_D_inhwi
-0000bca0 HWI_D_bss
-0000bca4 HWI_D_ccmask
-0000bca8 RTA_fromHost$pipe$dtab
-0000bcb4 RTA_toHost$pipe$dtab
-0000bcc0 LNK_dspFrameRequestMask
-0000bcc0 _LNK_dspFrameRequestMask
-0000bcc4 LNK_dspFrameReadyMask
-0000bcc4 _LNK_dspFrameReadyMask
-0000bcc8 LNK_readPend
-0000bcc8 _LNK_readPend
-0000bccc LNK_readDone
-0000bccc _LNK_readDone
-0000bcd0 LNK_readFail
-0000bcd0 _LNK_readFail
-0000bcd4 LNK_writeFail
-0000bcd4 _LNK_writeFail
-0000bce0 _rtdxNullChanCnt
-0000bce4 _rtdxNullFuncCnt
-0000bce8 _TSK_nTasks
-0000bcec _TSK_pid
-0000bcf0 _TSK
-0000bcf4 _CLK_DFLTMICROSECS
-0000bcf8 _CLK_D_microseconds
-0000bcfc _SYS_exitStackPtr
-0000bd00 _SYS_exitStackTop
-0000bd04 _DSK6713_AIC23_codeccontrolhandle
-0000bd08 _DSK6713_AIC23_codecdatahandle
-0000bd0c _ptr
-0000bd10 _H_Codec
-0000bd14 _CLK_htimePerLtime
-0000bd1c IDL_D_busyObj
-0000bd20 _DSK6713_version
-0000bd22 ___end__
-0000bd22 end
-0000bd24 _SYS_PUTCBEG
-0000bf23 _SYS_PUTCEND
-0000bf24 PIP_A_TABBEG
-0000bf24 RTA_fromHost$pipe
-0000bf24 _PIP_A_TABBEG
-0000bf28 RTA_fromHost$pipe$rd
-0000bf54 RTA_fromHost$pipe$aaa
-0000bf58 RTA_fromHost$pipe$wr
-0000bf84 RTA_fromHost$pipe$bbb
-0000bf88 RTA_toHost$pipe
-0000bf8c RTA_toHost$pipe$rd
-0000bfb8 RTA_toHost$pipe$aaa
-0000bfbc RTA_toHost$pipe$wr
-0000bfe8 RTA_toHost$pipe$bbb
-0000bfec IDL_A_CALBEG
-0000bfec IDL_cpuLoad$
-0000bfec PIP_A_TABEND
-0000bfec _PIP_A_TABEND
-0000bff0 LNK_dataPump$
-0000bff4 RTA_dispatcher$
-0000bff8 IDL_END$
-0000c000 LOG_system$buf
-0000c100 RTA_toHost$buf
-0000c2f9 KNL_swi$sts$maxfmt
-0000c301 KNL_swi$sts$sumfmt
-0000c308 TSK_idle
-0000c308 _TSK_idle
-0000c309 KNL_swi$sts$avgfmt
-0000c313 TSK_idle$sts$maxfmt
-0000c31b TSK_idle$sts$sumfmt
-0000c323 TSK_idle$sts$avgfmt
-0000c32d IDL_busyObj$maxfmt
-0000c330 IDL_busyObj$sumfmt
-0000c333 IDL_busyObj$avgfmt
-0000c39c HST_A_TABBEG
-0000c39c _HST_A_TABBEG
-0000c3a0 RTA_fromHost
-0000c3a0 _RTA_fromHost
-0000c3a8 RTA_fromHost$rtdx
-0000c3bc RTA_toHost
-0000c3bc _RTA_toHost
-0000c3c4 RTA_toHost$rtdx
-0000c3d8 HST_A_TABEND
-0000c3d8 KNL_swi$sts$stsobj
-0000c3d8 STS_A_TABBEG
-0000c3d8 _HST_A_TABEND
-0000c3d8 _STS_A_TABBEG
-0000c3dc KNL_swi$sts
-0000c3e8 TSK_idle$sts$stsobj
-0000c3ec TSK_idle$sts
-0000c3f8 IDL_busyObj$stsobj
-0000c3fc IDL_busyObj
-0000c3fc _IDL_busyObj
-0000c408 KNL_swi
-0000c408 STS_A_TABEND
-0000c408 SWI_A_TABBEG
-0000c408 _KNL_swi
-0000c408 _STS_A_TABEND
-0000c434 SWI_A_TABEND
-0000c45c LOG_A_TABBEG
-0000c45c LOG_system
-0000c45c _LOG_A_TABBEG
-0000c45c _LOG_system
-0000c474 LOG_A_TABEND
-0000c474 SYS$config
-0000c474 _LOG_A_TABEND
-0000c484 ___pinit__
-0000c484 pinit
-0000c490 TRC_cinit
-0000c494 TRC_R_mask
-0000c494 _TRC_R_mask
-0000c498 GBL_initdone
-0000c49c CLK_A_TABBEG
-0000c49c PRD_clock
-0000c49c _PRD_clock
-0000c4a0 CLK_null
-0000dbba CLK_COUNTSPMS
-0000dbba CLK_HTIMEPERLTIME
-0000dbba CLK_PRD
-0000dbba _CLK_COUNTSPMS
-0000dbba _CLK_PRD
-0000dbef GBL_TRCMASKVALUE
-00036ee8 CLK_LTIMEMULT
-00036ee8 GBL_FREQ
-01940000 CLK_REGS
-01940000 _CLK_REGS
-082039a3 HWI_INTRMULTHIGH
-310718af HWI_INTRMULTLOW
-ffffffff HST_DSMBUFSEG
-ffffffff IRAM
-ffffffff RTDX_DATAMEMSEG
-ffffffff SDRAM
-ffffffff _IRAM
-ffffffff _SDRAM
-ffffffff ___TI_pprof_out_hndl
-ffffffff ___TI_prof_data_size
-ffffffff ___TI_prof_data_start
-ffffffff ___binit__
-ffffffff ___c_args__
-ffffffff binit
-
-[720 symbols]
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/a0b0770ad80100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/a0b0770ad80100181ce89bcacea45786
deleted file mode 100644
index 2529f71..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/a0b0770ad80100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
- -1.8442833426489450e-03 -4.1190441269078303e-03 -2.0535873301705059e-03 -1.3703337256766852e-03 1.5790804472022347e-03 3.2681033644075077e-03 3.8489975928325247e-03 2.5928873392556755e-03 7.3935746561684527e-04 -6.2977102617087764e-04 -7.4022462424793865e-04 1.0838837495431400e-05 6.2201321644194470e-04 2.6185292432253412e-04 -9.8730303168041776e-04 -2.2339066001458349e-03 -2.5294527601668663e-03 -1.6842480785212259e-03 -4.2016236623464517e-04 2.5804777572294233e-04 -5.8087123501295821e-05 -8.2110499385966440e-04 -1.0138712539605769e-03 -7.2462256228287853e-05 1.5627338477316834e-03 2.7731479415439254e-03 2.7080617756874989e-03 1.5299945897829833e-03 2.9075333523994728e-04 1.5404209240295982e-05 7.8386710505693315e-04 1.6284321950868475e-03 1.3797792156491663e-03 -2.5618521768113443e-04 -2.3500948837747435e-03 -3.4788598845584733e-03 -2.9380959028223771e-03 -1.3703061862128398e-03 -2.2792940567773815e-04 -4.9434851794134783e-04 -1.7755467135066286e-03 -2.5945983820879503e-03 -1.6902711449647998e-03 7.9565808915559846e-04 3.3223856449474342e-03 4.1997688462157992e-03 3.0395347122322016e-03 1.1215680893589990e-03 2.9752002202157490e-04 1.3341691376504315e-03 3.1602890161225561e-03 3.7417961602412893e-03 1.8849793135973852e-03 -1.6009389970032073e-03 -4.4527074584582117e-03 -4.8293802357791162e-03 -2.9132207353127319e-03 -7.8850406846637741e-04 -6.2422045469190705e-04 -2.7015401777454782e-03 -5.0424933113328938e-03 -5.0614770814577954e-03 -1.8844015658019846e-03 2.7175907964180819e-03 5.6873054220569754e-03 5.2510734703655098e-03 2.4858008311493679e-03 4.2982376594226818e-04 1.3983170024624116e-03 4.8185763803916034e-03 7.5484357920044586e-03 6.5370280267915745e-03 1.5974940088091486e-03 -4.1920011112087695e-03 -6.9553964005030101e-03 -5.3222239631027140e-03 -1.6833671816308239e-03 -1.6143678346355493e-04 -2.9210596867410843e-03 -8.0344442826324330e-03 -1.0900480481099871e-02 -8.1827848211804884e-03 -9.0883142585662831e-04 6.0966318821772843e-03 8.1701258370888031e-03 4.8496443047958190e-03 4.1097124289880154e-04 1.9261748457898115e-04 5.7400707533348388e-03 1.3031422928204483e-02 1.5600386573617498e-02 1.0120491742732048e-02 -3.6398549709864289e-04 -8.6154694364350588e-03 -9.2393938919066339e-03 -3.4913914121199800e-03 1.5371957503610802e-03 -9.5799325715440809e-04 -1.1126447229936170e-02 -2.1547712424197108e-02 -2.3081317200630867e-02 -1.2831352513672649e-02 2.6694425876734678e-03 1.2374349063392154e-02 1.0080975202499228e-02 3.2000937820879843e-04 -4.8584066984454317e-03 3.7319205876993832e-03 2.3366682886858493e-02 3.9990474678018646e-02 3.9088852968886305e-02 1.8511365301032767e-02 -7.9253063604813167e-03 -2.0525827169962409e-02 -1.0613484503384342e-02 9.6001638620202695e-03 1.4005289209909406e-02 -1.6623772517222801e-02 -7.5176947269083069e-02 -1.2649037212918582e-01 -1.2785005009999825e-01 -5.9386966029887411e-02 5.7144488726935457e-02 1.6633881280155735e-01 2.1079847965764975e-01 1.6633881280155735e-01 5.7144488726935457e-02 -5.9386966029887411e-02 -1.2785005009999825e-01 -1.2649037212918582e-01 -7.5176947269083069e-02 -1.6623772517222801e-02 1.4005289209909406e-02 9.6001638620202695e-03 -1.0613484503384342e-02 -2.0525827169962409e-02 -7.9253063604813167e-03 1.8511365301032767e-02 3.9088852968886305e-02 3.9990474678018646e-02 2.3366682886858493e-02 3.7319205876993832e-03 -4.8584066984454317e-03 3.2000937820879843e-04 1.0080975202499228e-02 1.2374349063392154e-02 2.6694425876734678e-03 -1.2831352513672649e-02 -2.3081317200630867e-02 -2.1547712424197108e-02 -1.1126447229936170e-02 -9.5799325715440809e-04 1.5371957503610802e-03 -3.4913914121199800e-03 -9.2393938919066339e-03 -8.6154694364350588e-03 -3.6398549709864289e-04 1.0120491742732048e-02 1.5600386573617498e-02 1.3031422928204483e-02 5.7400707533348388e-03 1.9261748457898115e-04 4.1097124289880154e-04 4.8496443047958190e-03 8.1701258370888031e-03 6.0966318821772843e-03 -9.0883142585662831e-04 -8.1827848211804884e-03 -1.0900480481099871e-02 -8.0344442826324330e-03 -2.9210596867410843e-03 -1.6143678346355493e-04 -1.6833671816308239e-03 -5.3222239631027140e-03 -6.9553964005030101e-03 -4.1920011112087695e-03 1.5974940088091486e-03 6.5370280267915745e-03 7.5484357920044586e-03 4.8185763803916034e-03 1.3983170024624116e-03 4.2982376594226818e-04 2.4858008311493679e-03 5.2510734703655098e-03 5.6873054220569754e-03 2.7175907964180819e-03 -1.8844015658019846e-03 -5.0614770814577954e-03 -5.0424933113328938e-03 -2.7015401777454782e-03 -6.2422045469190705e-04 -7.8850406846637741e-04 -2.9132207353127319e-03 -4.8293802357791162e-03 -4.4527074584582117e-03 -1.6009389970032073e-03 1.8849793135973852e-03 3.7417961602412893e-03 3.1602890161225561e-03 1.3341691376504315e-03 2.9752002202157490e-04 1.1215680893589990e-03 3.0395347122322016e-03 4.1997688462157992e-03 3.3223856449474342e-03 7.9565808915559846e-04 -1.6902711449647998e-03 -2.5945983820879503e-03 -1.7755467135066286e-03 -4.9434851794134783e-04 -2.2792940567773815e-04 -1.3703061862128398e-03 -2.9380959028223771e-03 -3.4788598845584733e-03 -2.3500948837747435e-03 -2.5618521768113443e-04 1.3797792156491663e-03 1.6284321950868475e-03 7.8386710505693315e-04 1.5404209240295982e-05 2.9075333523994728e-04 1.5299945897829833e-03 2.7080617756874989e-03 2.7731479415439254e-03 1.5627338477316834e-03 -7.2462256228287853e-05 -1.0138712539605769e-03 -8.2110499385966440e-04 -5.8087123501295821e-05 2.5804777572294233e-04 -4.2016236623464517e-04 -1.6842480785212259e-03 -2.5294527601668663e-03 -2.2339066001458349e-03 -9.8730303168041776e-04 2.6185292432253412e-04 6.2201321644194470e-04 1.0838837495431400e-05 -7.4022462424793865e-04 -6.2977102617087764e-04 7.3935746561684527e-04 2.5928873392556755e-03 3.8489975928325247e-03 3.2681033644075077e-03 1.5790804472022347e-03 -1.3703337256766852e-03 -2.0535873301705059e-03 -4.1190441269078303e-03 -1.8442833426489450e-03
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c0b2ad3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c0b2ad3a45070018153483e962c7925e
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f0/c0b2ad3a45070018153483e962c7925e
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/20db068f41070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/20db068f41070018153483e962c7925e
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/20db068f41070018153483e962c7925e
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/3070afcc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/3070afcc7506001814daa3a49c232c18
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/3070afcc7506001814daa3a49c232c18
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/80297e277506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/80297e277506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f1/80297e277506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f2/b0ee7d1e7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f2/b0ee7d1e7506001814daa3a49c232c18
deleted file mode 100644
index a03a1e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f2/b0ee7d1e7506001814daa3a49c232c18
+++ /dev/null
@@ -1,155 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-unsigned int ptr = N-1;
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- if (ptr < 0)
- ptr = N-1
-
- buffer[ptr] = (float) sample_in / 32767.f;
- sample_out = non_circ_fir();
- mono_write_16Bit(sample_out);
- ptr--;
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += buffer[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f3/4028e5157506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f3/4028e5157506001814daa3a49c232c18
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f3/4028e5157506001814daa3a49c232c18
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f4/6077be50dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f4/6077be50dd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f4/6077be50dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/003a8979cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/003a8979cd0100181ce89bcacea45786
deleted file mode 100644
index 131cf32..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/003a8979cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,14 +0,0 @@
-utils.loadPlatform("ti.platforms.dsk6713");
-
-/* The following DSP/BIOS Features are enabled. */
-bios.enableRealTimeAnalysis(prog);
-bios.enableRtdx(prog);
-bios.enableTskManager(prog);
-
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive");
-bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC");
-bios.HWI.instance("HWI_INT4").useDispatcher = 1;
-bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit");
-// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
-
-prog.gen();
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/209f9a79cd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/209f9a79cd0100181ce89bcacea45786
deleted file mode 100644
index d8ec432..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/209f9a79cd0100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/Github/RTDSP/lab3/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/Github/RTDSP/lab3/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/Github/RTDSP/lab3/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/3083b0d3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/3083b0d3e10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f5/3083b0d3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f6/c0a4a4c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f6/c0a4a4c9e10100181ce89bcacea45786
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f6/c0a4a4c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f7/70aeaed3e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f7/70aeaed3e10100181ce89bcacea45786
deleted file mode 100644
index bbef2b9..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f7/70aeaed3e10100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:09:50 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f8/a046f979dd0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f8/a046f979dd0100181ce89bcacea45786
deleted file mode 100644
index 89864cb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f8/a046f979dd0100181ce89bcacea45786
+++ /dev/null
@@ -1,98 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C67_SRCS :=
-S_UPPER_SRCS :=
-CMD_UPPER_SRCS :=
-LIB_SRCS :=
-OBJ_SRCS :=
-C55_SRCS :=
-C_SRCS :=
-A_SRCS :=
-CPP_SRCS :=
-O_SRCS :=
-LD_SRCS :=
-TCF_SRCS :=
-ASM_SRCS :=
-CXX_SRCS :=
-ASM_UPPER_SRCS :=
-OPT_SRCS :=
-C43_SRCS :=
-C64_SRCS :=
-S62_SRCS :=
-S55_SRCS :=
-CMD_SRCS :=
-S67_SRCS :=
-C++_SRCS :=
-SA_SRCS :=
-S64_SRCS :=
-C_UPPER_SRCS :=
-S??_SRCS :=
-S43_SRCS :=
-C62_SRCS :=
-TCF_UPPER_SRCS :=
-S_SRCS :=
-C??_SRCS :=
-CC_SRCS :=
-GEN_SRCS :=
-S62_DEPS :=
-GEN_CMDS :=
-ASM_DEPS :=
-C55_DEPS :=
-C6000_EXECUTABLE_OUTPUTS :=
-S_UPPER_DEPS :=
-S_DEPS :=
-CPP_DEPS :=
-C64_DEPS :=
-C43_DEPS :=
-C62_DEPS :=
-OBJS :=
-C??_DEPS :=
-S??_DEPS :=
-S55_DEPS :=
-C_DEPS :=
-C_UPPER_DEPS :=
-SA_DEPS :=
-C++_DEPS :=
-CC_DEPS :=
-S64_DEPS :=
-CXX_DEPS :=
-S43_DEPS :=
-S67_DEPS :=
-C67_DEPS :=
-ASM_UPPER_DEPS :=
-OPT_DEPS :=
-S62_DEPS__QTD :=
-OBJS__QTD :=
-C64_DEPS__QTD :=
-ASM_DEPS__QTD :=
-C62_DEPS__QTD :=
-C_UPPER_DEPS__QTD :=
-S??_DEPS__QTD :=
-GEN_CMDS__QTD :=
-S55_DEPS__QTD :=
-S64_DEPS__QTD :=
-C55_DEPS__QTD :=
-C67_DEPS__QTD :=
-GEN_SRCS__QTD :=
-CPP_DEPS__QTD :=
-C43_DEPS__QTD :=
-C_DEPS__QTD :=
-S43_DEPS__QTD :=
-C6000_EXECUTABLE_OUTPUTS__QTD :=
-CC_DEPS__QTD :=
-S67_DEPS__QTD :=
-OPT_DEPS__QTD :=
-S_UPPER_DEPS__QTD :=
-C??_DEPS__QTD :=
-CXX_DEPS__QTD :=
-C++_DEPS__QTD :=
-S_DEPS__QTD :=
-SA_DEPS__QTD :=
-ASM_UPPER_DEPS__QTD :=
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-. \
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/40318311e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/40318311e10100181ce89bcacea45786
deleted file mode 100644
index 5c1d8c8..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/40318311e10100181ce89bcacea45786
+++ /dev/null
@@ -1,91 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables
-C_SRCS += \
-../intio.c
-
-TCF_SRCS += \
-../dsp_bios_.tcf
-
-GEN_SRCS += \
-./dsp_bios_cfg.cmd \
-./dsp_bios_cfg.s?? \
-./dsp_bios_cfg_c.c
-
-GEN_CMDS += \
-./dsp_bios_cfg.cmd
-
-OBJS += \
-./dsp_bios_cfg.obj \
-./dsp_bios_cfg_c.obj \
-./intio.obj
-
-S??_DEPS += \
-./dsp_bios_cfg.pp
-
-C_DEPS += \
-./dsp_bios_cfg_c.pp \
-./intio.pp
-
-OBJS__QTD += \
-".\dsp_bios_cfg.obj" \
-".\dsp_bios_cfg_c.obj" \
-".\intio.obj"
-
-S??_DEPS__QTD += \
-".\dsp_bios_cfg.pp"
-
-GEN_SRCS__QTD += \
-".\dsp_bios_cfg.cmd" \
-".\dsp_bios_cfg.s??" \
-".\dsp_bios_cfg_c.c"
-
-C_DEPS__QTD += \
-".\dsp_bios_cfg_c.pp" \
-".\intio.pp"
-
-TCF_SRCS_QUOTED += \
-"../dsp_bios_.tcf"
-
-GEN_CMDS_QUOTED += \
--l"./dsp_bios_cfg.cmd"
-
-C_SRCS_QUOTED += \
-"../intio.c"
-
-
-# Each subdirectory must supply rules for building sources it contributes
-dsp_bios_cfg.cmd: ../dsp_bios_.tcf
- @echo 'Building file: $<'
- @echo 'Invoking: TConf Script Compiler'
- "C:/EEE/CCStudio4.1/xdctools_3_16_02_32/tconf" -b -Dconfig.importPath="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages;" "$<"
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg.s??: dsp_bios_cfg.cmd
-dsp_bios_cfg_c.c: dsp_bios_cfg.cmd
-
-dsp_bios_cfg.obj: ./dsp_bios_cfg.s?? $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-dsp_bios_cfg_c.obj: ./dsp_bios_cfg_c.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="dsp_bios_cfg_c.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-intio.obj: ../intio.c $(GEN_OPTS)
- @echo 'Building file: $<'
- @echo 'Invoking: Compiler'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/dsk6713/include" --include_path="C:/EEE/CCStudio4.1/ccsv4/C6000/csl/include" --include_path="C:/GIT/RTDSP/lab4/RTDSP/Debug" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/include" --include_path="C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/include/c6000" --diag_warning=225 --preproc_with_compile --preproc_dependency="intio.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#")
- @echo 'Finished building: $<'
- @echo ' '
-
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/606935ce7406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/606935ce7406001814daa3a49c232c18
deleted file mode 100644
index 4edafac..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/606935ce7406001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/70d3cfc9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/70d3cfc9e10100181ce89bcacea45786
deleted file mode 100644
index d4648e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/f9/70d3cfc9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,8762 +0,0 @@
-//!
-//# c6x1x.cdb 5.25.25
-
-object CACHE_L2 :: MEM {
- param iComment :: "Generated by Cache Settings in GBL"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 262144
- param len :: 0
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "Cache"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-class Module {
- prop Visible :: 1
- prop Writable :: 1
- prop IsConfMod :: (if self.gNumOf > 0 {1} else {0})
- prop NoGen :: 0
- prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a)
- prop dataSize :: 0
- prop error :: # ("Error: ", self.name, $1)
- prop warning :: ("Warning ...", self.name, $1)
- prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a)
- prop name :: ("<unnamed module>")
- prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b)
-}
-
-class ObjectMgr {
- isa Module
- prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")})
- prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)})
- prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a)
- prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a)
- prop GetSetOf :: (self.gSetOf)
- prop GetNumOf :: (self.gNumOf)
- prop GetObjId :: (self.iId)
- prop GetPriority :: (self.iId)
- prop SetPriority :: (self.iId = $1)
- prop IsConfObj :: (self.iIsUsed)
- prop localCanCreate :: ("ok")
- prop localCanDelete :: ("ok")
- prop localCreate :: ("ok")
- prop localDelete :: ("ok")
- prop localInit :: (0)
- prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0})
- prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId)
- prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop isDriver :: (0)
- prop SortChildHierView :: (1)
-}
-
-type GlobalStatus {
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop Label :: "Current Configuration Status"
- prop GlobalIcon :: 101
- prop InstanceIcon :: 101
- prop GlobalHelpTopic :: (100)
- prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}")
- prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize)
- global GENLIB :: "bioscfg.dll" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generation Library"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- }
- global DATE :: "Thu Jan 25 15:05:29 2018" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global GCONFVERS :: "@(#)*** xdcutils-e03" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Estimated Data Size: %d"
- prop StatusField :: 1
- prop NoGen :: 1
- }
- global MinStackSize :: = ($a = ((2 * (2)) * 4), $a = $a + ((2 * (5)) * 4), $a = $a + ((0) * 4), $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (2)) * 4) * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if ($i != HWI_NMI && $i != HWI_RESET) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } } }, $a = $a + (((12 + 14 + 2) * 4) * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + ((((2 * 2) + 18 + (2 * 4)) * 4) * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (((2 * (3)) * 4) * $b), $a) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "Est. Min. Stack Size (MAUs): %d"
- prop StatusField :: 1
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) {
- prop Label :: "Warnings"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global SeedVersion :: = "@(#)*** cuda-u25x" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-class EModule {
- isa Module
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class EObjectMgr {
- isa ObjectMgr
- prop IsXMod :: (1)
- prop Vendor :: ("")
- prop Version :: ("")
-}
-
-class ModuleFolder {
- isa Module
- prop NoGen :: 1
-}
-
-type SYSTEM {
- isa ModuleFolder
- prop Label :: "System"
- prop GlobalIcon :: 151
- prop GlobalHelpTopic :: (500)
- prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type INS {
- isa ModuleFolder
- prop Label :: "Instrumentation"
- prop GlobalIcon :: 152
- prop GlobalHelpTopic :: (501)
- prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SCH {
- isa ModuleFolder
- prop Label :: "Scheduling"
- prop GlobalIcon :: 153
- prop GlobalHelpTopic :: (502)
- prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SYN {
- isa ModuleFolder
- prop Label :: "Synchronization"
- prop GlobalIcon :: 154
- prop GlobalHelpTopic :: (503)
- prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type IOF {
- isa ModuleFolder
- prop Label :: "Input/Output"
- prop GlobalIcon :: 155
- prop GlobalHelpTopic :: (504)
- prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type SIODRIVER {
- isa ModuleFolder
- prop Label :: "Device Drivers"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 127
- prop GlobalHelpTopic :: (505)
- prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type PROJ {
- isa ObjectMgr
- prop name :: "PROJ"
- prop maxObjs :: 0
- prop Label :: "Project Manager"
- prop GlobalIcon :: 121
- prop InstanceIcon :: 122
- prop InstanceHelpTopic :: (201)
- prop GlobalHelpTopic :: (101)
- prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- prop Visible :: 0
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ALIASALL :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate C Names for All Objects"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global IGNOREWARNING :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Ignore Warnings"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global INCPATH :: ".;../../include;$(BIOSROOT)/include" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Include File Search Path"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global OBJDIR :: "." {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object file directory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTEXE :: "out" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Executable File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTLIB :: "lib" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Library File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTASM :: "asm" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Assembly Language Source File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXTOBJ :: "obj" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Object File Extension"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst projType :: "Executable" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Executable,Library"
- prop Label :: "Target Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst projName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst useRpt :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RPT Instruction"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst minimizeSpace :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Optimize for Space over Time"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst tmx :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Avoid TMX Silicon Bugs"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type PROJ_FILE {
- isa ObjectMgr
- prop Visible :: 0
- prop Label :: "Project File Manager"
- prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE)
- prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL)
- prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}")
- prop NoGen :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst elemType :: "C Source" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "C Source,ASM Source,Library,Linker Command File"
- prop Label :: "Input File Type"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst elemName :: "$(PROG)" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Input File Name"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst optLevel :: "register+local+global" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "register,register+local,register+local+global,register+local+global+file"
- prop Label :: "Optimization Level"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst inline :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Inline Expansion"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst definitions :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Additional Definitions"
- prop Visible :: 0
- prop Writable :: if self.elemType == "C Source" {1} else {0}
- prop NoGen :: 1
- }
- inst iParent :: 0 {
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-type GBL {
- isa Module
- prop name :: "GBL"
- prop Label :: "Global Settings"
- prop IsContainedIn :: SYSTEM
- prop cGen :: 0
- prop GenLinkPrologue :: ("%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n-priority\n--trampolines\n%25S%1S%22S-l%2S%23S%3S\n%24S%15S%4S%16S%18S%5S%6S%12S%7S%17S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _librarySuffix, _chipStr, _sioLibStr, _mpcLibStr, _bios6xLibStr, _bios6xClkType, _instStr, _rtsNameStr, _romStr, _biosRomStr, _logLibStr, _SKLibStr")
- prop poolStr :: (if (self.LINKWITHROM == 0) {""} else {if POOL.USEPOOL {""} else {"_POOL_config=0;\n"}})
- prop msgqStr :: (if (self.LINKWITHROM == 0) {""} else {if MSGQ.USEMSGQ {""} else {"_MSGQ_config=0;\n"}})
- prop GenLinkEpilogue :: ("%0t_GBL_CACHE = GBL_CACHE;\n%1S%2S\0, poolStr, msgqStr")
- prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}"
- prop GlobalIcon :: 105
- prop InstanceIcon :: 106
- prop GlobalHelpTopic :: (103)
- prop InstanceHelpTopic :: (103)
- prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}")
- prop localInit :: (RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"))
- prop chipcall :: ("ok")
- prop IsConfMod :: 1
- prop ucompare :: ($e = "ok", $a = ($1 >> 31) & 0x00000001, $b = ($2 >> 31) & 0x00000001, $c = $1 & 0x7fffffff, $d = $2 & 0x7fffffff, if ($a > $b) {$e = "gt"} else {if ($a == $b) {if ($c > $d) {$e = "gt"} else {if ($c == $d) {$e = "eq"} else {$e = "lt"}}} else {$e = "lt"}}, $e)
- prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} , self.L2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} , self.L2CacheSizeCheck()} else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0, self.L2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0, self.L2CacheSizeCheck()} }}})
- prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C621XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x4000, CACHE_L2.len = 0x4000} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0xc000, CACHE_L2.len = 0xc000} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} }}}}}, $e)
- prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} }}}}}, $e)
- prop C64PL1PCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1PCFG = "32k", CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {if (self.C64PL1PCFG == "0k") {CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x0, CACHE_L1P.len = 0x0, CACHE_L1P.Delete("MEM")} else {if (self.C64PL1PCFG == "4k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x1000, CACHE_L1P.len = 0x1000} else {if (self.C64PL1PCFG == "8k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x2000, CACHE_L1P.len = 0x2000} else {if (self.C64PL1PCFG == "16k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x4000, CACHE_L1P.len = 0x4000} else {if (self.C64PL1PCFG == "32k") {CACHE_L1P.Create("MEM"), CACHE_L1P.base = CACHE_L1P.base + CACHE_L1P.len - 0x8000, CACHE_L1P.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL1DCacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {self.C64PL1DCFG = "32k", CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {if (self.C64PL1DCFG == "0k") {CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x0, CACHE_L1D.len = 0x0, CACHE_L1D.Delete("MEM")} else {if (self.C64PL1DCFG == "4k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x1000, CACHE_L1D.len = 0x1000} else {if (self.C64PL1DCFG == "8k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x2000, CACHE_L1D.len = 0x2000} else {if (self.C64PL1DCFG == "16k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x4000, CACHE_L1D.len = 0x4000} else {if (self.C64PL1DCFG == "32k") {CACHE_L1D.Create("MEM"), CACHE_L1D.base = CACHE_L1D.base + CACHE_L1D.len - 0x8000, CACHE_L1D.len = 0x8000} else {$e = self.error("Unknown cache size")}}}}}}, $e)
- prop C64PL2CacheSizeCheck :: ($e = "ok", if (self.C64PL2CONFIGURE == 0) {CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "0k") {CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C64PL2MODEOPTS == "32k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x8000, CACHE_L2.len = 0x8000} else {if (self.C64PL2MODEOPTS == "64k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x10000, CACHE_L2.len = 0x10000} else {if (self.C64PL2MODEOPTS == "128k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x20000, CACHE_L2.len = 0x20000} else {if (self.C64PL2MODEOPTS == "256k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x40000, CACHE_L2.len = 0x40000} else {if (self.C64PL2MODEOPTS == "512k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x80000, CACHE_L2.len = 0x80000} else {if (self.C64PL2MODEOPTS == "1024k") {CACHE_L2.Create("MEM"), CACHE_L2.base = CACHE_L2.base + CACHE_L2.len - 0x100000, CACHE_L2.len = 0x100000} else {$e = self.error("Unknown cache size")}}}}}}}}, $e)
- prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if self.C621XL2CONFIGURE {$e = self.C621xL2CacheSizeCheck()} else {if self.C641XL2CONFIGURE {$e = self.C641xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711 {$e = self.C621xL2CacheSizeCheck()} else {if self.DSPSUBTYPE == 6400 {$e = self.C641xL2CacheSizeCheck()} else {{CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}}} }, $e)
- prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)})
- prop setL2MODE :: (if (self.L2MODEOPTS == "SRAM") {0x0} else {if (self.L2MODEOPTS == "1-way cache") {0x1} else {if (self.L2MODEOPTS == "2-way cache") {0x2} else {if (self.L2MODEOPTS == "3-way cache") {0x3} else {0x7}}}})
- prop setC641XL2MODE :: (if (self.C641XL2MODEOPTS == "4-way cache (0k)") {0x0} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {0x1} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {0x2} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {0x3} else {0x7}}}})
- prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n"
- prop _autoInitStr :: ""
- prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {if (HST.BIOSLINK == 1) {"lnkbioslink"} else {"lnknone"}}}})
- prop _dsptype :: GBL.DSPTYPE
- prop _instStr :: if self.INSTRUMENTED {""} else {"_NONINST"}
- prop _rtsNameStr :: (self.RTSLIB)
- prop _biosLibStr :: "-lbios%20S%23S%8S %24t/* DSP/BIOS support */%0t\n"
- prop _compilerModel :: if self.ENDIAN == "big" {"e"} else {""}
- prop _librarySuffix :: (if (self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713) {if (self.ENDIAN == "big") {".a67e"} else {".a67"}} else {if (self.DSPSUBTYPE == 6400) {if (self.ENDIAN == "big") {".a64e"} else {".a64"}} else {if (self.DSPSUBTYPE == 6499) {if (self.ENDIAN == "big") {".a64Pe"} else {".a64P"}} else {if (self.DSPSUBTYPE == 6799) {if (self.ENDIAN == "big") {".a67Pe"} else {".a67P"}} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {if (self.ENDIAN == "big") {".a674e"} else {".a674"}} else {if (self.ENDIAN == "big") {".a62e"} else {".a62"}}}}}})
- prop _rtdxLibStr :: if RTDX.USERTDX == 0 {""} else {if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {if RTDX.RTDXTYPE == "Simulator" {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxhs%9S.lib %24t/* RTDX support */%0t\n"}}}
- prop _rtsLibStr :: (if self.SPECIFYRTSLIB {"-l%21S%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6700 || self.DSPSUBTYPE == 6711 || self.DSPSUBTYPE == 6712 || self.DSPSUBTYPE == 6713 {"-lrts6700%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6400 {"-lrts6400%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6799 {"-lrts67plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if self.DSPSUBTYPE == 6499 {"-lrts64plus%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {if ((self.DSPSUBTYPE == 6747) || (self.DSPSUBTYPE == 6748)) {"-lrts6740%9S.lib%24t/* C and C++ run-time library support */%0t\n"} else {"-lrts6200%9S.lib%24t/* C and C++ run-time library support */%0t\n"}}}}}})
- prop _bios6xClkType :: (if self.CLKTYPE == 6000 {"C6000"} else {if self.CLKTYPE == 700 {"DA700"} else {if (self.CLKTYPE == 420 || self.CLKTYPE == 6424) {if self.USEIDMA0DISPATCHER {"DM420IDMA0"} else {"DM420"}} else {if self.CLKTYPE == 2430 {"2430"} else {if self.CLKTYPE == 6482 {"TCI6482"} else {if self.CLKTYPE == 6486 {"TCI6486"} else {if self.CLKTYPE == 6488 {"TCI6488"} else {if self.CLKTYPE == 442 {"DRA442"} else {if self.CLKTYPE == 3430 {"3430"} else {if self.CLKTYPE == 6467 {"DM6467"} else {if self.CLKTYPE == 761990 {"F761990"} else {""}}}}}}}}}}})
- prop _bios6xLibStr :: ("-lbios%19S%8S%24t/* BIOS clock specific library */%0t\n-lbios6x1x%8S%24t/* BIOS c6x1x specific library */%0t\n")
- prop _chipStr :: ""
- prop _pmiLibStr :: ""
- prop _pmiVoltLibStr :: ""
- prop _pmiVoltControlLibStr :: ""
- prop _psclLibStr :: ""
- prop _psclCfgLibStr :: ""
- prop _psclConfigLibStr :: ""
- prop _mpcLibStr :: ""
- prop _lnkCmdFile :: MEM.LNKCMDFILE
- prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"})
- prop _sioLibStr :: if SIO.USEISSUERECLAIM == 1 {"-lsioir%23S%8S %24t/* supports SIO Issue/Reclaim model only */%0t\n"} else {"-lsioboth%23S%8S %24t/* supports both SIO models */%0t\n"}
- prop _devLibStr :: "-ldrivers%23S%14S %24t/* device drivers support */%0t\n"
- prop _cslLibStr :: ""
- prop _chipType :: ""
- prop _logLibStr :: if LOG.TS {"-llog8%3S\n"} else {""}
- prop _romStr :: if self.LINKWITHROM {"-lromC672x.out\n-lromC672x.cmd\n"} else {""}
- prop _biosRomStr :: if self.LINKWITHROM {"_BIOSROM"} else {""}
- prop _SKLibStr :: ""
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PRODUCT :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop EnvField :: 1
- }
- global CALLBACKOBJ :: CLK {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CHIPCHAIN :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACE :: "CD-01234567" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Trace Mask"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 0
- }
- global BOARD :: "c6211" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Target Board Name"
- prop JSName :: "BOARDNAME"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link to ROM Library"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CPUCLOCK :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global PROCID :: = 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Processor ID (PROCID)"
- prop JSName :: "PROCID"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CLKIN :: = 20000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "Board Clock in KHz (Informational Only)"
- prop JSName :: "CLKIN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global FREQ :: 225000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MIPS :: 225.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "DSP Speed In MHz (CLKOUT)"
- prop JSName :: "CLKOUT"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, self.FREQ = int(self.MIPS * 1000), if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e)
- }
- global OSTYPE :: "BIOS" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "BIOS"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPTYPE :: 62 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Major Type"
- prop JSName :: "DSPTYPE"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global SPECIFYRTSLIB :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify RTS library"
- prop JSName :: "SPECIFYRTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: 1
- }
- global RTSLIB :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Run-Time Support Library"
- prop JSName :: "RTSLIB"
- prop NoGen :: 1
- prop Visible :: 1
- prop Writable :: self.SPECIFYRTSLIB
- }
- global DSPSUBTYPE :: 6713 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713"
- prop Label :: "DSP Type"
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (self.DSPSUBTYPE = $1, self.L2Check(), "ok")
- prop NoGen :: 0
- }
- global CLKTYPE :: 6000 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CLK Type"
- prop JSName :: "CLKTYPE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CHIPTYPE :: "6713" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "6211,6711,6712,6713,DA610,custom,other"
- prop Label :: "Chip Support Library (CSL)"
- prop JSName :: "CHIPTYPE"
- prop NoGen :: 1
- prop Visible :: 0
- prop Writable :: 1
- prop Set :: (if ($1 == "6201" || $1 == "6202" || $1 == "6203" || $1 == "6204" || $1 == "6205") {self.DSPSUBTYPE = 6200} else {if ($1 == "6701") {self.DSPSUBTYPE = 6700} else {if ($1 == "6211") {self.DSPSUBTYPE = 6211} else {if ($1 == "6711" || $1 == "6712" || $1 == "6713" || $1 == "DA610") {if ($1 == "6711") {self.DSPSUBTYPE = 6711} , if ($1 == "6712") {self.DSPSUBTYPE = 6712} , if ($1 == "6713") {self.DSPSUBTYPE = 6713} } else {if ($1 == "DM642" || $1 == "6412" || $1 == "6414" || $1 == "6415" || $1 == "6416" || $1 == "6410" || $1 == "6413") {self.DSPSUBTYPE = 6400} }}}}, self.CHIPTYPE = $1, self.L2Check(), $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e)
- }
- global DISPCALLCSLCFGINIT :: = (self.CHIPTYPE != "other" && self.CHIPTYPE != "custom") {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call CSL_cfgInit Initialization routine"
- prop Visible :: 0
- prop Writable :: self.SUPPORTCSL
- prop NoGen :: 1
- }
- global DSPNAME :: "TMS320C62XX" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "FIXED,FLOAT"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Word Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {if GBL.DSPSUBTYPE == 5599 {8} else {GBL.DSPWORDSIZE}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "DSP Byte Size"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of the Data Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {if (GBL.DSPTYPE == 28) {22} else {0}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop iComment :: "Size of Code Pointer"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENDIAN :: "little" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "little,big"
- prop Label :: "DSP Endian Mode"
- prop JSName :: "ENDIANMODE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.ENDIAN = $1, "ok")
- }
- global BIGENDIAN :: = if self.ENDIAN == "little" {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global AUTOINIT :: "ROM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "ROM,RAM"
- prop Label :: "C Autoinitialization Model"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USERINIT :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call User Init Function"
- prop JSName :: "CALLUSERINITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok")
- }
- global USERINITFXN :: @_GBL_setPLLto225MHz {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User Init Function"
- prop JSName :: "USERINITFXN"
- prop Visible :: 1
- prop Writable :: self.USERINIT
- prop NoGen :: 0
- }
- global OLDAUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "previous value for autocalculate"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ENABLEINST :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real Time Analysis"
- prop JSName :: "ENABLEINST"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_toHost.bufseg = HST.OBJMEMSEG, RTA_fromHost.Create("HST"), RTA_fromHost.bufseg = HST.OBJMEMSEG, RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {if (self.LINKWITHROM) {self.LINKWITHROM = 0} , RTA_toHost.Delete("HST"), RTA_toHost.bufseg = MEM_NULL, RTA_fromHost.Delete("HST"), RTA_fromHost.bufseg = MEM_NULL, RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok")
- }
- global INSTRUMENTED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Instrumented BIOS library"
- prop JSName :: "INSTRUMENTED"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CGENERATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Do C Generation"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLEDLL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Dynamic Loading"
- prop JSName :: "ENABLEDLL"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global PCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop JSName :: "CSRPCC"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) {0} else {1}
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global DCC :: "mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "620x/670x/672x"
- }
- global PCACHE :: = (if (self.PCC == "mapped") {0x0000} else {if (self.PCC == "cache enable") {0x0040} else {if (self.PCC == "cache freeze") {0x0060} else {0x0080}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global DCACHE :: = (if (self.DCC == "mapped") {0x0000} else {if (self.DCC == "cache enable") {0x0008} else {if (self.DCC == "cache freeze") {0x000c} else {0x0010}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CACHE :: = (self.PCACHE | self.DCACHE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global C621XL2CONFIGURE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "621x/671x - Configure L2 Memory Settings"
- prop JSName :: "C621XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) {1} else {0}
- prop TabName :: "621x/671x"
- prop Set :: ($e = "ok", self.C621XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global C641XL2CONFIGURE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x - Configure L2 Memory Settings"
- prop JSName :: "C641XCONFIGUREL2"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400) {1} else {0}
- prop TabName :: "641x"
- prop Set :: ($e = "ok", self.C641XL2CONFIGURE = $1, self.PCC = "mapped", $e = self.L2CacheSizeCheck(), $e)
- prop NoGen :: 1
- }
- global L2CONFIGURE :: = (if GBL.DSPSUBTYPE == 6400 {self.C641XL2CONFIGURE} else {self.C621XL2CONFIGURE}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure L2 Cache Control (c6x1x support)"
- prop Visible :: 0
- prop NoGen :: 0
- }
- global C621XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "Program Cache Control - CSR(PCC) "
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- }
- global C641XPCC :: "Cache Enabled - Direct Mapped" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Cache Enabled - Direct Mapped"
- prop Label :: "641x - Program Cache Control - CSR(PCC)"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2MODEOPTS :: "SRAM" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE)"
- prop JSName :: "C621XCCFGL2MODE"
- prop Enum :: "SRAM,1-way cache,2-way cache,3-way cache,4-way cache"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "621x/671x"
- prop Set :: ($i = self.L2MODEOPTS, self.L2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.L2MODEOPTS = $i} , $e)
- }
- global C641XL2MODEOPTS :: "4-way cache (0k)" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Mode - CCFG(L2MODE)"
- prop Enum :: "4-way cache (0k),4-way cache (32k),4-way cache (64k),4-way cache (128k),4-way cache (256k)"
- prop JSName :: "C641XCCFGL2MODE"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- prop Set :: ($i = self.C641XL2MODEOPTS, self.C641XL2MODEOPTS = $1, $e = self.L2CacheSizeCheck(), if ($e != "ok") {self.C641XL2MODEOPTS = $i} , $e)
- }
- global L2MODE :: = (if GBL.DSPSUBTYPE == 6400 {self.setC641XL2MODE()} else {self.setL2MODE()}) {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Mode - CCFG(L2MODE) Values"
- prop Enum :: "0,1,2,3,7"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2PRIORITY :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "L2 Requestor Priority - CCFG(P)"
- prop Enum :: "0,1"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global L2MARMASK :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "L2 MAR0-15 - bitmask used to initialize MARs"
- prop JSName :: "C621XMAR"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6712 || GBL.DSPSUBTYPE == 6713) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "621x/671x"
- }
- global SUPPORTCSL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global ENABLEALLTRC :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable All TRC Trace Event Classes"
- prop JSName :: "ENABLEALLTRC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok")
- }
- global TRCMASKVALUE :: 56303 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- }
- global CDBPATH :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "CDB search path in COFF file"
- prop JSName :: "CDBRELATIVEPATH"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LINKWITHROM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Link with ROM"
- prop JSName :: "LINKWITHROM"
- prop Visible :: 0
- prop Writable :: if (self.DSPSUBTYPE == 6799 && self.ENABLEINST) {1} else {0}
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1) {$e = self.error("This BIOS version does not support linking with ROM.")} , $e)
- }
- global C641XL2PRIORITY :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK1 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR96-111 - bitmask controls EMIFB CE space"
- prop JSName :: "C641XMAREMIFB"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK2 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR128-143 - bitmask controls EMIFA CE0 space"
- prop JSName :: "C641XMARCE0"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK3 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR144-159 - bitmask controls EMIFA CE1 space"
- prop JSName :: "C641XMARCE1"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK4 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR160-175 - bitmask controls EMIFA CE2 space"
- prop JSName :: "C641XMARCE2"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2MARMASK5 :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAR176-191 - bitmask controls EMIFA CE3 space"
- prop JSName :: "C641XMARCE3"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2REQPRIORITY :: "urgent" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "641x L2 Requestor Priority Queue - CCFG(P)"
- prop JSName :: "C641XCCFGP"
- prop Enum :: "urgent,high,medium,low"
- prop Visible :: 1
- prop Writable :: if ((GBL.DSPSUBTYPE == 6400) && GBL.L2CONFIGURE == 1) {1} else {0}
- prop NoGen :: 1
- prop Set :: (self.L2REQPRIORITY = $1, if (self.L2REQPRIORITY == "urgent") {self.C641XL2PRIORITY = 0} else {if (self.L2REQPRIORITY == "high") {self.C641XL2PRIORITY = 1} else {if (self.L2REQPRIORITY == "medium") {self.C641XL2PRIORITY = 2} else {self.C641XL2PRIORITY = 3}}}, "ok")
- prop TabName :: "641x"
- }
- global L2CONFIGALLOC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Configure Priority Queues"
- prop JSName :: "C641XSETL2ALLOC"
- prop Visible :: 1
- prop Writable :: (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1)
- prop NoGen :: 0
- prop TabName :: "641x"
- }
- global L2ALLOC0 :: 6 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on URGENT Queue (L2ALLOC0)"
- prop JSName :: "C641XL2ALLOC0"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC1 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on HIGH Queue (L2ALLOC1)"
- prop JSName :: "C641XL2ALLOC1"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC2 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on MEDIUM Queue (L2ALLOC2)"
- prop JSName :: "C641XL2ALLOC2"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC3 :: 2 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Max L2 Transfer Requests on LOW Queue (L2ALLOC3)"
- prop JSName :: "C641XL2ALLOC3"
- prop Enum :: "0,1,2,3,4,5,6,7"
- prop Visible :: 1
- prop Writable :: if (GBL.DSPSUBTYPE == 6400 && GBL.L2CONFIGURE == 1 && GBL.L2CONFIGALLOC == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "641x"
- }
- global L2ALLOC :: = ((self.L2ALLOC0) | (self.L2ALLOC1 << 4) | (self.L2ALLOC2 << 8) | (self.L2ALLOC3 << 12)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 0
- }
-}
-
-type MEM {
- isa ObjectMgr
- prop Label :: "MEM - Memory Section Manager"
- prop name :: "MEM"
- prop DependsOn :: "SEM"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 115
- prop InstanceIcon :: 116
- prop GlobalHelpTopic :: (108)
- prop InstanceHelpTopic :: (208)
- prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}")
- prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}")
- prop heapLabelStr :: (self.iHeapId)
- prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"})
- prop _stackSize :: MEM.STACKSIZE
- prop AllocType :: (if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysinitString, _initSeg, _sysinitPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _bssString, _bssSeg, _firstPlace, _farString, _farSeg, _secondPlace, _cinitString, _cinitSeg, _midPlace, _pinitString, _pinitSeg, _midPlace, _dataString, _dataSeg, _midPlace, _constString, _constSeg, _midPlace, _switchString, _switchSeg, _midPlace, _cioString, _cioSeg, _midPlace, _textString, _textSeg, _midPlace, _frtString, _frtSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, _sysdataString, _sysdataSeg, _thirdPlace, _trcinitString, _trcinitSeg, _midPlace, _gblinitString, _gblinitSeg, _midPlace, _memObjString, _memObjSeg, _midPlace, _sysregsString, _regsSeg, _midPlace, _biosString, _biosSeg, _midPlace, _stackString, _stackSeg, _midPlace"}}})
- prop _firstPlace :: 0
- prop _secondPlace :: 0 + 1
- prop _thirdPlace :: 0 + 2
- prop _midPlace :: (0x7fffffff / 2)
- prop _sysinitPlace :: (0x7fffffff / 2)
- prop _argsString :: ("%8t .args: align=4 fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize")
- prop _bssString :: ("%8t .bss: {}")
- prop _farString :: ("%8t .far: {}")
- prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"})
- prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"})
- prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"})
- prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"})
- prop _dataString :: ("%8t .data: {}")
- prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"} else {"%8t .const: align = 0x8 {} load > %1s run\0, _loadconstSeg"}} else {"%8t GROUP {\n %8t .const: align = 0x8 {} \n %8t .printf (COPY): {} \n%8t }"})
- prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"})
- prop _sysmemString :: ("%8t .sysmem: {}")
- prop _cioString :: ("%8t .cio: {}")
- prop _memObjString :: ("%8t .mem: {}")
- prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"})
- prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"})
- prop _sysregsString :: ("%8t .sysregs: {}")
- prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"})
- prop _frtString :: ("%8t frt: {}")
- prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"})
- prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: align = 0x8 {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 8;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t GROUP { \n%16t .sysstack : align = 0x4 {%12t\n %16t GBL_sysstackbeg = .;\n %16t *(.sysstack)\n %16t GBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n %16t _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n %16t_HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%16t} \n%16t .stack: align = 0x4 {%12t\n %16t GBL_stackbeg = .;\n %16t *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n %16t _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n %16t _HWI_STKTOP = (GBL_stackbeg);%16t\n }%8t\n } BLOCK(0x20000), run \0, _cmd55stksz, _cmd55systksz"} else {"%8t .stack: {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n _HWI_STKBOTTOM = GBL_stackbeg;%12t\n _HWI_STKTOP = (GBL_stackend + 1);%8t\n }\0, _stackSize"}}})
- prop _memHdrSize :: 8
- prop GenLinkEpilogue :: ("%0t}")
- prop _stackSeg :: MEM.STACKSEG
- prop _textSeg :: MEM.TEXTSEG
- prop _frtSeg :: MEM.TEXTSEG
- prop _biosSeg :: MEM.BIOSSEG
- prop _dataSeg :: MEM.DATASEG
- prop _cioSeg :: MEM.CIOSEG
- prop _sysmemSeg :: MEM.SYSMEMSEG
- prop _constSeg :: MEM.CONSTSEG
- prop _initSeg :: MEM.INITSEG
- prop _pinitSeg :: MEM.PINITSEG
- prop _trcinitSeg :: MEM.TRCINITSEG
- prop _gblinitSeg :: MEM.BIOSINITSEG
- prop _regsSeg :: MEM.SYSDATASEG
- prop _sysdataSeg :: MEM.SYSDATASEG
- prop _argsSeg :: MEM.ARGSSEG
- prop _argsSize :: MEM.ARGSSIZE
- prop _bssSeg :: MEM.BSSSEG
- prop _farSeg :: MEM.FARSEG
- prop _cinitSeg :: MEM.CINITSEG
- prop _memObjSeg :: MEM.CFGOBJSEG
- prop _switchSeg :: MEM.SWITCHSEG
- prop _loadtextSeg :: MEM.LOADTEXTSEG
- prop _loadbiosSeg :: MEM.LOADBIOSSEG
- prop _loadconstSeg :: MEM.LOADCONSTSEG
- prop _loadinitSeg :: MEM.LOADINITSEG
- prop _loadpinitSeg :: MEM.LOADPINITSEG
- prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG
- prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG
- prop _loadcinitSeg :: MEM.LOADCINITSEG
- prop _loadswitchSeg :: MEM.LOADSWITCHSEG
- prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} )
- prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t GROUP {%12t\n .sysinitgap {. += 0x%2x;}\n .sysinit:\n .%0r$heap: {%16t\n . += 0x%1x;%12t\n }%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n . += 0x%1x;%8t\n } RUN_START(%0r$B), RUN_START(_%0r_base), RUN_SIZE(%0r$L), RUN_SIZE(_%0r_length)\0, _heapsize, _heaplen"})
- prop _objMemSeg :: self
- prop _placement :: 0x7fffffff - 1
- prop _heapsize :: (self.iHeapSize)
- prop _heaplen :: (self.iHeapSize)
- prop _sysinitgap :: 2 * 4
- prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"PAGE %3d: %16t%0r: %26torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len, _page"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}})
- prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d)
- prop _page :: (self.page)
- prop _origin :: (self.base)
- prop _len :: (self.len)
- prop maxObjs :: (32767)
- prop codeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {(($1.space == "code") || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 54 {($1.space == "code")} else {if GBL.DSPTYPE == 28 {($1.space == "code" || ($1.space == "code/data"))} else {if GBL.DSPTYPE == 55 {(($1.space == "code") || ($1.space == "code/data"))} else {($1.space == "code/data")}}}}})
- prop dataMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {if GBL.DSPTYPE == 28 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}}}})
- prop dataNullMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {if GBL.DSPTYPE == 28 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 55 {$1.space == "data" || $1.space == "code/data"} else {$1.space == "code/data"}}}}})
- prop dataCodeMember :: (if $1.dynamicLoading == 1 {0} else {if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {if GBL.DSPTYPE == 28 {($1.space == "code" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 55 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}}}})
- prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM")
- prop validate :: ($e = self.checkMemOverlap($1), if ($e == "ok") {$e = self.checkHeapSize($1)} , if ($e == "ok") {$e = self.checkHeapSeg($1)} , $e)
- prop checkHeapSeg :: ($e = "ok", if ($1 == MEM_NULL && MEM.NOHEAPS == 0) {if (MEM.MALLOCSEG == MEM_NULL) {$e = ("Heaps are enabled, but the segment for malloc (MEM.MALLOCSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.MALLOCSEG to it.")} , if (MEM.SEGZERO == MEM_NULL) {$e = ("Heaps are enabled, but the segment for DSP/BIOS Objects (MEM.BIOSOBJSEG) is not set correctly. Please create a heap in one of your data segments and set MEM.BIOSOBJSEG to it.")} } , $e)
- prop checkHeapSize :: ($e = "ok", if (MEM.NOHEAPS == 0) {if ($1.iAllocHeap && $1 != MEM_NULL) {if ($1.iHeapSize > $1.len) {$e = ("MEM segment %s: heap cannot be larger than the length of segment that contains it.")} } } , $e)
- prop checkMemOverlap :: ($e = "ok", if ($1 != MEM_NULL && $1.iIsUsed == 1) {if ($1.len == 0) {$a = $1.base} else {$a = ($1.base + $1.len - 1)}, scan ($j; MEM) {if ($1 != $j && $j != MEM_NULL && $j.iIsUsed == 1 && (GBL.DSPTYPE == 62 || $1.space == $j.space)) {if (!($j == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $j.base, if ($j.len == 0) {$c = $j.base} else {$c = ($j.base + $j.len - 1)}, if ($a >= $b && $1.base <= $c) {$e = ("MEM segment %s: overlaps with another segment or cache configuration."), break} } } }} , $e)
- prop _spaceEnum :: (self.ENUMSPACE)
- prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) {
- prop NoGen :: 0
- }
- global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reuse Startup Code Space"
- prop JSName :: "REUSECODESPACE"
- prop Visible :: 1
- prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1
- prop NoGen :: 1
- prop Set :: (self.SAVEREUSE = $1, "ok")
- }
- global SAVEREUSE :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- global doCheckOverlap :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MAPSELECT :: "Map 1" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Map Mode"
- prop JSName :: "MAPMODE"
- prop Enum :: "Map 0,Map 1"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global ARGSSIZE :: 4 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x01 | 0x02
- prop Label :: "Argument Buffer Size"
- prop JSName :: "ARGSSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"})
- }
- global ARGSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Argument Buffer Section (.args)"
- prop JSName :: "ARGSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global BIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "BIOS Code Section (.bios)"
- prop JSName :: "BIOSSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: if GBL.DSPTYPE == 54 {0x01 | 0x02} else {0x02}
- prop Label :: "Stack Size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {self.STACKSIZE = ($1 & -2)} else {if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE == 5599)) {self.STACKSIZE = ($1 & -4)} else {self.STACKSIZE = $1}}, "ok")
- prop PropSetOkUserMsg :: if (MEM.STACKSIZE < GlobalStatus.MinStackSize) {"Warning: You are setting the stack size to a value that is less than the Estimated Minimum Stack Size!"} else {"ok"}
- }
- global USERCMD :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "User .cmd File For Compiler Sections"
- prop JSName :: "USERCOMMANDFILE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STACKSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "Stack Section (.stack)"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok")
- }
- global ENABLELOADSEG :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify Separate Load Addresses"
- prop JSName :: "ENABLELOADADDR"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADBIOSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - BIOS Code Section (.bios)"
- prop JSName :: "LOADBIOSSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global INITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Startup Code Section (.sysinit)"
- prop JSName :: "SYSINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- }
- global LOADINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.codeMember($1)
- prop Label :: "Load Address - Startup Code Section (.sysinit)"
- prop JSName :: "LOADSYSINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "GBLINITSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global TRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "TRC Initial Value (.trcdata)"
- prop JSName :: "TRCDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global LOADBIOSINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)"
- prop JSName :: "LOADGBLINITSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global LOADTRCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataCodeMember($1)
- prop Label :: "Load Address - TRC Initial Value (.trcdata)"
- prop JSName :: "LOADTRCDATASEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SYSDATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Kernel State (.sysdata)"
- prop JSName :: "SYSDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global CFGOBJSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: self.dataMember($1)
- prop Label :: "DSP/BIOS Conf Sections (.*obj)"
- prop JSName :: "OBJSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Data"
- }
- global NOHEAPS :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No Dynamic Memory Heaps"
- prop JSName :: "NOMEMORYHEAPS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok")
- prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"}
- }
- global SEGZERO :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For DSP/BIOS Objects"
- prop JSName :: "BIOSOBJSEG"
- prop Visible :: 1
- prop Writable :: MEM.NOHEAPS == 0
- prop NoGen :: 0
- prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok")
- }
- global MALLOCSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap)
- prop Label :: "Segment For malloc() / free()"
- prop JSName :: "MALLOCSEG"
- prop Visible :: 1
- prop Writable :: (MEM.NOHEAPS == 0)
- prop NoGen :: 0
- prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok")
- }
- global USEMPC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Memory Protection Controller module"
- prop JSName :: "USEMPC"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LNKCMDFILE :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Specify User Linker cmd File"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Text Section (.text)"
- prop JSName :: "TEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADTEXTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.codeMember($1))
- prop Label :: "Load Address - Text Section (.text)"
- prop JSName :: "LOADTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global SWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Switch Jump Tables (.switch)"
- prop JSName :: "SWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADSWITCHSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Switch Jump Tables (.switch)"
- prop JSName :: "LOADSWITCHSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global BSSSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.bss)"
- prop JSName :: "BSSSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global FARSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "C Variables Section (.far)"
- prop JSName :: "FARSEG"
- prop Visible :: if GBL.DSPTYPE == 62 {1} else {0}
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Data Initialization Section (.cinit)"
- prop JSName :: "CINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - Data Initialization Section (.cinit)"
- prop JSName :: "LOADCINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global PINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "C Function Initialization Table (.pinit)"
- prop JSName :: "PINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADPINITSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataCodeMember($1))
- prop Label :: "Load Address - C Function Initialization Table (.pinit)"
- prop JSName :: "LOADPINITSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global CONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Constant Sections (.const, .printf)"
- prop JSName :: "CONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global LOADCONSTSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Load Address - Constant Sections (.const, .printf)"
- prop JSName :: "LOADCONSTSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global DATASEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.data)"
- prop JSName :: "DATASEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global CIOSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.cio)"
- prop JSName :: "CIOSEG"
- prop Visible :: 1
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- prop Set :: (self.CIOSEG = $1, self.SYSMEMSEG = $1, "ok")
- }
- global SYSMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: (self.dataMember($1))
- prop Label :: "Data Section (.sysmem)"
- prop JSName :: "SYSMEMSEG"
- prop Visible :: 0
- prop Writable :: (self.USERCMD == 0)
- prop NoGen :: 1
- prop TabName :: "Compiler Sections"
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory (.hwi)"
- prop JSName :: "HWISEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok")
- }
- global LOADSTUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - Function Stub Memory (.hwi)"
- prop JSName :: "LOADHWISEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "HWIVECSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.VECMEMSEG = $1, HWI.VECMEMSEG = $1, GlobalStatus.gDirty = 1, if ($1.base == 0) {HWI.GENERATE_RESET_VEC = 0} , "ok")
- }
- global LOADVECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address -Interrupt Service Table Memory (.hwi_vec)"
- prop JSName :: "LOADHWIVECSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global RTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop JSName :: "RTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop TabName :: "BIOS Code"
- prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok")
- }
- global LOADRTDXTEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)"
- prop JSName :: "LOADRTDXTEXTSEG"
- prop Visible :: 1
- prop Writable :: (self.ENABLELOADSEG == 1)
- prop NoGen :: 1
- prop TabName :: "Load Address"
- }
- global ENUMSPACE :: = if GBL.DSPTYPE == 62 {"code,data,code/data,reserved"} else {if GBL.DSPTYPE == 54 {"code,data,io,other,reserved"} else {if GBL.DSPTYPE == 28 {"code,code/data,data,io,other,reserved"} else {if GBL.DSPTYPE == 55 {"code/data,code,data,io,reserved"} else {"code/data,io,reserved"}}}} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "ENUMSPACE"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst base :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"}
- prop Style :: 0x02
- prop Label :: "base"
- prop JSName :: "base"
- prop Visible :: 1
- prop Writable :: (self.iIsModifiable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", $a = self.base, self.base = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.base = $a} } , $e)
- }
- inst len :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x08
- prop Label :: "len"
- prop JSName :: "len"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 0
- prop Set :: ($e = "ok", $a = self.len, self.len = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.len = $a} } , "ok")
- }
- inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {0}}})} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "create a heap in this memory"
- prop JSName :: "createHeap"
- prop Visible :: 1
- prop Writable :: (self.space == "data" || self.space == "code/data") && (MEM.NOHEAPS == 0) && self.memWritable
- prop NoGen :: 0
- prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} , self.iAllocHeap = $1, MEM.gDirty = 1, $a})
- }
- inst iHeapSize :: 0x8000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Style :: 0x02
- prop Label :: "heap size"
- prop JSName :: "heapSize"
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0)
- prop Set :: (self.iHeapSize = $1, "ok")
- prop NoGen :: 1
- }
- inst iSegZero :: = MEM.SEGZERO
- inst iUserHeapId :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "enter a user defined heap identifier label"
- prop JSName :: "enableHeapLabel"
- prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok")
- prop Visible :: 1
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0)
- prop NoGen :: 1
- }
- inst iHeapId :: @segment_name {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "heap identifier label"
- prop JSName :: "heapLabel"
- prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e)
- prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId)
- prop Visible :: 1
- prop NoGen :: 0
- }
- inst iReqHeapCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: MEM._spaceEnum()
- prop JSName :: "space"
- prop Visible :: 1
- prop Writable :: (self.memWritable)
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 != "data" && $1 != "code/data" && self.iAllocHeap == 1) {$e = self.error("Cannot select this space if a heap will be created")} else {$a = self.space, self.space = $1, if (MEM.CALLBACKOBJ != nil) {$e = MEM.CALLBACKOBJ.call(self), if ($e != "ok") {self.space = $a} } }, $e)
- }
- inst dynamicLoading :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Reserved for dynamic loading"
- prop JSName :: "dynamicLoading"
- prop Visible :: GBL.ENABLEDLL
- prop Writable :: GBL.ENABLEDLL
- prop NoGen :: 1
- }
- inst iIsModifiable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-object MEM_NULL :: MEM {
- param iComment :: "Place holder segment which allows user to disable heaps"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 0
- param iAllocHeap :: 1
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 1
- param space :: "data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-type OBJ {
- isa ObjectMgr
- prop name :: "OBJ"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} )
- prop _objMemDesc :: ("%8t .obj: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type BUF {
- isa ObjectMgr
- prop name :: "BUF"
- prop Label :: "BUF - Buffer Manager"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop InstanceHelpTopic :: (421)
- prop GlobalHelpTopic :: (321)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t.buf:{}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$data: align = 0x%1x {%12t\n %0s$databeg = .;\n .+= %2d; %8t\n }\0, _objAlign, _buflength")
- prop _objAlign :: self.align
- prop _instMemSeg :: self.bufseg
- prop _buflength :: (self.postalignsize * self.bufcount)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"buf.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far BUF_Obj %0r;\n\0"} else {"extern BUF_Obj %0r;\n\0"})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = ((7 + 4) * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = ((7 + 3) * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (7 + 4)} , if (GBL.DSPTYPE == 28) {$a = (12 + 6)} , $a)
- prop dataSize :: ($d = 0, scan ($i; BUF) {if ($i.IsConfObj()) {$d += $i.len} , $d += BUF.objectSize}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Memory segment for buffer pool"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst bufcount :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer count"
- prop JSName :: "bufCount"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (self.bufcount = $1, self.postalignsize = (self.size + (self.align - 1)) & ~(self.align - 1), self.len = $1 * self.postalignsize, "ok")
- }
- inst size :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer size (MADUs)"
- prop JSName :: "size"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 8) {self.error("Size should be atleast 8 bytes")} else {self.size = $1, self.postalignsize = ($1 + (self.align - 1)) & ~(self.align - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst align :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Buffer alignment(Power of 2)"
- prop JSName :: "align"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 4) {self.error("Alignment should be atleast 4 ")} else {self.align = $1, self.postalignsize = (self.size + ($1 - 1)) & ~($1 - 1), self.len = self.postalignsize * self.bufcount, "ok"})
- }
- inst len :: self.size {
- prop Label :: "Buffer pool length (MADUs)"
- prop JSName :: "len"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst postalignsize :: self.size {
- prop Label :: "Buffer size after alignment (MADUs)"
- prop JSName :: "postalignsize"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type POOL {
- isa Module
- prop Visible :: 1
- prop name :: "POOL"
- prop Label :: "POOL - Allocator Manager"
- prop IsConfMod :: self.USEPOOL
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 199
- prop InstanceIcon :: 200
- prop GlobalHelpTopic :: (324)
- prop InstanceHelpTopic :: (424)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "MEM,BUF"
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEPOOL :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Allocator Manager"
- prop JSName :: "ENABLEPOOL"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type CLK {
- isa ObjectMgr
- prop name :: "CLK"
- prop Label :: "CLK - Clock Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 103
- prop InstanceIcon :: 104
- prop InstanceHelpTopic :: (202)
- prop GlobalHelpTopic :: (102)
- prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}")
- prop objectSize :: ($a = (1 * 4), $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t \n CLK_F_gethtime = %5s;\n %4S \n%4t} > %3s, RUN_START(%1U_A_TABBEG) \0, name, _objSize, _memSeg, _linkString, clkFxn, _clkStartFxn")
- prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {@_CLK_start6x} else {@FXN_F_nop}
- prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TDDR = CLK_TDDR;\n\0")
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"}
- prop _memSeg :: CLK.OBJMEMSEG
- prop _objSize :: self.objectSize()
- prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero}
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} )
- prop dataSize :: (self.objectSize() * (CLK.gNumOf + 1))
- prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")})
- prop localCreate :: (CLK.HOOKFXN = @HWI_F_dispatch, self.seizeHwi(self.WHICHHWI), "ok")
- prop localDelete :: (if (self.gNumOf == 1) {if (GBL.CALLMODEL == "far") {CLK.HOOKFXN = @CLK_F_frete, self.seizeHwi(self.WHICHHWI)} else {CLK.HOOKFXN = @CLK_F_rete, self.seizeHwi(self.WHICHHWI)}} , "ok")
- prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1})
- prop seizeHwi :: (if ($1.client == "USER" && $1 == HWI_UNUSED) {self.error("Interrupt not mapped for selected timer.")} else {if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {if ($1.client == "CSL") {self.error("Interrupt mapped to selected timer is already in use by CSL.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", $1.iEventId = $1.iSource.iIntrSelectNum, $1.iUseDispatcher = (if CLK.HOOKFXN == @HWI_F_dispatch {1} else {0}), $1.iArg = (if $1.iUseDispatcher == 1 {@CLK_A_TABBEG} else {0}), HWI.gDirty = 1, "ok"}}})
- prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", $1.iUseDispatcher = 0, $1.iArg = 0, HWI.gDirty = 1, "ok")
- prop seizeTimer :: (if ($1 == "Timer 0") {self.WHICHTIMER = "Timer 0", self.WHICHHWI = Timer_0.iHwi, self.REGS = 0x01000, self.TIMERNUM = 0, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 4, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 1") {self.WHICHTIMER = "Timer 1", self.WHICHHWI = Timer_1.iHwi, self.REGS = 0x2400, self.TIMERNUM = 1, self.TIMERIMR = 0x45, self.TIMERIFR = 0x46, self.INTBIT = 6, self.TIMERIMRMASK = self.WHICHHWI.Ier1Mask, self.IMR0TINTMASK = 0x0, self.IMR1TINTMASK = self.WHICHHWI.Ier1Mask, self.setMicroseconds(self.MICROSECONDS)} else {if ($1 == "Timer 2") {self.WHICHTIMER = "Timer 2", self.WHICHHWI = Timer_2.iHwi, self.REGS = 0x4000, self.TIMERNUM = 2, self.TIMERIMR = 0x0, self.TIMERIFR = 0x1, self.INTBIT = 11, self.TIMERIMRMASK = self.WHICHHWI.Ier0Mask, self.IMR0TINTMASK = self.WHICHHWI.Ier0Mask, self.IMR1TINTMASK = 0x0, self.setMicroseconds(self.MICROSECONDS)} }}, "ok")
- prop setMicroseconds :: ($a = if FIXTDDR == 1 {self.TDDR} else {0}, $b = 0xffffffff, $c = (float($a) + 1.0) * ((float($b) + self.adjustPrd) / (GBL.MIPS / 4)), if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int((1.0 * $1 * GBL.MIPS / 4) / (float($b) + self.adjustPrd))} , self.PRD = int((1.0 * $1 * GBL.MIPS) / (4 * (self.TDDR + 1.0))) - self.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 4 / GBL.MIPS), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")})
- prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gGBLChain :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global WHICHHWI :: HWI_INT14 {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop Label :: "CPU Interrupt"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global INTBIT :: = self.WHICHHWI.iIntrEnableMask
- global WHICHTIMER :: "Timer 0" {
- prop Label :: "Timer Selection"
- prop JSName :: "TIMERSELECT"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Timer 0,Timer 1"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (self.WHICHTIMER != $1) {if (self.USETIMER == 0) {$e = "ok"} else {if ($1 == "Timer 0") {$a = Timer_0.iHwi} else {if ($1 == "Timer 1") {$a = Timer_1.iHwi} else {$a = Timer_2.iHwi}}, $e = self.seizeHwi($a)}, if ($e == "ok") {self.releaseHwi(self.WHICHHWI), if ($1 == "Timer 0") {self.TIMERNUM = 0, self.WHICHHWI = Timer_0.iHwi} else {if ($1 == "Timer 1") {self.TIMERNUM = 1, self.WHICHHWI = Timer_1.iHwi} else {self.TIMERNUM = 2, self.WHICHHWI = Timer_2.iHwi}}, self.WHICHTIMER = $1, self.HOOKFXN = if self.gNumOf > 0 {@HWI_F_dispatch} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}, self.seizeHwi(self.WHICHHWI)} , $e} )
- }
- global REGS :: = if self.WHICHTIMER == "Timer 0" {self.TIMER0BASE} else {if self.WHICHTIMER == "Timer 1" {self.TIMER1BASE} else {self.TIMER2BASE}} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 1
- }
- global TIMER0BASE :: 26476544 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER0BASE"
- prop NoGen :: 1
- }
- global TIMER1BASE :: 26738688 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER1BASE"
- prop NoGen :: 1
- }
- global TIMER2BASE :: 28049408 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop JSName :: "TIMER2BASE"
- prop NoGen :: 1
- }
- global TIMERNUM :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop NoGen :: 0
- }
- global USETIMER :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable CLK Manager"
- prop JSName :: "ENABLECLK"
- prop Visible :: 1
- prop Writable :: if self.gNumOf > 0 {0} else {1}
- prop NoGen :: 0
- prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (($e = self.seizeHwi(self.WHICHHWI)) == "ok") {self.USETIMER = 1, self.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, self.HOOKFXN = if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete}, self.seizeHwi(self.WHICHHWI), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, GlobalStatus.gDirty = 1, self.error("Current stack size inadequate to enable CLK")} else {if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , $e}} else {$e}} else {if ($1 == 0 && self.USETIMER == 1) {self.releaseHwi(self.WHICHHWI), self.TIMEFXN = @FXN_F_zero, self.HOOKFXN = @FXN_F_nop, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {"ok"}})
- }
- global HIRES :: = 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use high resolution time for internal timings"
- prop JSName :: "HIRESTIME"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")})
- }
- global INSTRPERCLK :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.4f"
- prop Label :: "Microseconds/Int"
- prop JSName :: "MICROSECONDS"
- prop Set :: (self.setMicroseconds($1))
- prop Visible :: 1
- prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1}
- prop NoGen :: 1
- }
- global MICROSECS :: = int(round(self.MICROSECONDS)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global PROGTIMREGS :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Directly configure on-chip timer registers"
- prop JSName :: "CONFIGURETIMER"
- prop Visible :: 1
- prop Writable :: self.USETIMER
- prop NoGen :: 1
- }
- global TCR :: = 0x20 | CLK.TDDR {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global FIXTDDR :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Fix TDDR"
- prop JSName :: "FIXTDDR"
- prop Visible :: (GBL.DSPTYPE != 62)
- prop Writable :: CLK.PROGTIMREGS && (GBL.DSPTYPE != 62)
- prop NoGen :: 1
- }
- global TDDR :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: "TDDR Register"
- prop JSName :: "TCRTDDR"
- prop Set :: (if ((GBL.DSPTYPE != 62) && ($1 > 0)) {self.error("The on-chip timer does not have enough range to support this value, maximum is 15.")} else {CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok"})
- prop Visible :: GBL.DSPTYPE != 62
- prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62
- prop NoGen :: 0
- }
- global TDDRHIGH :: = ((self.TDDR & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global PRD :: 56250 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Label :: if (GBL.CLKTYPE == 700) {"Compare0 Register"} else {"PRD Register"}
- prop JSName :: "PRD"
- prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 4 / GBL.MIPS), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok")
- prop Visible :: 1
- prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0}
- prop NoGen :: 0
- }
- global PRDHIGH :: = ((self.PRD & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global COUNTSPMS :: = int(round(GBL.MIPS * 1000.0 / (CLK.TDDR + 1) / 4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- }
- global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 4) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.0f"
- prop Label :: "Instructions/Int"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TIMEFXN :: = CLK.clkFxn() {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HOOKFXN :: @HWI_F_dispatch {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CLKFXN :: = if (CLK.PRD == 0xffffffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: PRD {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global CALMULT :: = 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEMULT :: = if GBL.DSPSUBTYPE == 6499 {1} else {((self.TDDR + 1) * 4)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEDIV :: = 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global LTIMEMULT :: = ((self.TDDR + 1) * (self.PRD + self.adjustPrd) * (4)) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global HTIMEPERLTIME :: = if GBL.DSPSUBTYPE == 6499 {int(round(GBL.MIPS * self.MICROSECONDS))} else {(self.PRD + CLK.adjustPrd)} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x20
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-type PRD {
- isa ObjectMgr
- prop name :: "PRD"
- prop Label :: "PRD - Periodic Function Manager"
- prop IsContainedIn :: SCH
- prop IsConfMod :: 1
- prop GlobalIcon :: 119
- prop InstanceIcon :: 120
- prop InstanceHelpTopic :: (210)
- prop GlobalHelpTopic :: (110)
- prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: ("%g ticks")
- prop STSGetSumFmt :: (PRD.STSGetMaxFmt())
- prop STSGetAvgFmt :: ("%.2f ticks")
- prop GetPeriod :: self.period
- prop IsOneShot :: if self.mode == "one-shot" {1} else {0}
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (9 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 62) {$a = (8 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nPRD_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if PRD.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if PRD.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if PRD.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: PRD.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {self.objectSize() * 2} else {self.objectSize()}
- prop numInst :: (PRD.gNumOf)
- prop dataSize :: (self.objectSize() * PRD.gNumOf)
- prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} , if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} else {PRD_clock.function = @PRD_F_tick}} )
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error(" System Stack Size too small")} else {self.myCreate("can")})
- prop localCreate :: (STS.gNumEmbed += 1, if (($a = self.myCreate("do")) == "ok") {if (PRD_clock.iIsUsed == 1) {if (self.gNumOf == 0) {PRD_clock.function = @PRD_F_tick} } } , $a)
- prop localCanDelete :: (self.myDelete("can"))
- prop localDelete :: (STS.gNumEmbed -= 1, if (($a = self.myDelete("do")) == "ok") {if (self.gNumOf == 1) {if (PRD_clock.iIsUsed == 1) {if (TSK.USETSK == 1 && TSK.TSKTICK == "PRD") {PRD_clock.function = @PRD_F_tick} else {PRD_clock.function = @FXN_F_nop}} } } , $a)
- prop maxObjs :: (32767)
- prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}})
- prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"})
- prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} , PRD.CALLBACKOBJ.call())
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"})
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop DEFAULT_THOOKFXN :: @_KNL_tick
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USECLK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use CLK Manager to drive PRD"
- prop JSName :: "USECLK"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD"), self.error("Current Stack size inadequate to enable this option")} else {"ok"}}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"})
- prop NoGen :: 1
- }
- global MICROSECONDS :: 1000.000000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Label :: "Microseconds/Tick"
- prop JSName :: "MICROSECONDS"
- prop Visible :: 1
- prop Writable :: self.USECLK == 0
- prop NoGen :: 1
- }
- global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if ((($i.period / $d) * $d != $i.period)) || ($i.mode == "one-shot") {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global THOOKFXN :: @_KNL_tick {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "System Tick Hook Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALLBACKOBJ :: STS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst period :: 0x7fff {
- prop Label :: "period (ticks)"
- prop JSName :: "period"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if (($1 > 0) && ($1 < 0x8000)) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0 and less than 0x8000")})
- }
- inst mode :: "continuous" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "continuous,one-shot"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst function :: @FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) {
- prop Label :: "period (ms)"
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: 0x04
- prop Format :: "%.1f"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
- inst filter :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f ticks" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object PRD_swi :: SWI {
- param iComment :: "This Software ISR executes all configured PRD functions"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted"
- param function :: @PRD_F_swi
- param pri :: 1
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object PRD_clock :: CLK {
- param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "PRD"
- param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD"
- param function :: @PRD_F_tick
- param Order :: 0
- param iPri :: 0
-}
-
-type RTDX {
- isa ObjectMgr
- prop Label :: "RTDX - Real-Time Data Exchange Settings"
- prop name :: "RTDX"
- prop IsConfMod :: self.USERTDX
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 145
- prop InstanceIcon :: 146
- prop GlobalHelpTopic :: (113)
- prop InstanceHelpTopic :: (213)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement,
- _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""})
- prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name")
- prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"})
- prop _rtdxDataSeg :: RTDX.DATAMEMSEG
- prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG
- prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG
- prop _placement :: (0x7fffffff / 2)
- prop _objSize :: RTDX.BUFMEMSIZE
- prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""})
- prop _interruptMask :: RTDX.MASK
- prop cGen :: 1
- prop noObjectAlias :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}})
- prop cGenCInst :: (if (self.iChannelMode == "output") {"RTDX_CreateOutputChannel(%0r);\n\0"} else {"RTDX_CreateInputChannel(%0r);\n\0"})
- prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d)
- prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USERTDX :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Data Exchange (RTDX)"
- prop JSName :: "ENABLERTDX"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok"})
- }
- global USERTEXECUTION :: = 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Real-Time Execution Control"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RTDXTYPE :: "JTAG" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "JTAG,HSRTDX,Simulator"
- prop Label :: "RTDX Mode"
- prop JSName :: "MODE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok")
- }
- global DATAMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "RTDX Data Segment (.rtdx_data)"
- prop JSName :: "RTDXDATASEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "RTDX Buffer Size (MAUs)"
- prop JSName :: "BUFSIZE"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 0
- prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 3) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 3) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {HST.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {"ok"}}})
- }
- global TEXTMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "RTDX Text Segment (.rtdx_text)"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global MASK :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Label :: "RTDX Interrupt Mask"
- prop JSName :: "INTERRUPTMASK"
- prop Visible :: 1
- prop Writable :: self.USERTDX
- prop NoGen :: 1
- prop Set :: (self.MASK = $1, "ok")
- }
- global CALLBACKOBJ :: HWI {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iChannelMode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Channel Mode"
- prop JSName :: "channelMode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok")
- }
-}
-
-type HST {
- isa ObjectMgr
- prop name :: "HST"
- prop Label :: "HST - Host Channel Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "HWI"
- prop FileStream :: 1
- prop GlobalIcon :: 107
- prop InstanceIcon :: 108
- prop GlobalHelpTopic :: (104)
- prop InstanceHelpTopic :: (204)
- prop maxObjs :: (GBL.DSPWORDSIZE)
- prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + PIP.OBJSIZE + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok")
- prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok")
- prop GenLinkPrologue :: (if (self.LNKTYPE == "RTDX") {"_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; \n_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; \n_LNK_readDone = LNK_readDone; \n_LNK_readFail = LNK_readFail; \n_LNK_readPend = LNK_readPend; \n_LNK_writeFail = LNK_writeFail;"} )
- prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _dsmAllocDesc, _dsmMemSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28) {$a = (14 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (12 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 * 4)} , if (GBL.DSPTYPE == 54 || GBL.DSPTYPE == 62) {$a = (7 * 4)} , $a)
- prop _dsmAllocDesc :: ("%8t .dsm: {}")
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign")
- prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""}
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: HST.OBJMEMSEG
- prop _dsmMemSeg :: HST.DSMBUFSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"})
- prop modifiable :: ((if self.iDelUser == "USER" {1} else {0}))
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 2 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global LNKTYPE :: "RTDX" {
- prop Label :: "Host Link Type"
- prop JSName :: "HOSTLINKTYPE"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "RTDX,NONE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 3, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}})
- }
- global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use RTDX for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Shared Memory for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use EVM54's I/O ports for host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "No host link"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global MAXFRAMESET :: 64 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMESET"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global MAXFRAMEALLOWED :: 255 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "MAXFRAMEALLOWED"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global DSMBUFSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Shared Memory Segment"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- }
- global DSMMEMSIZE :: = 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop Label :: "Shared Memory Frame Size (MAUs)"
- prop Visible :: 0
- prop Writable :: self.DSM
- prop NoGen :: 0
- prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}})
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst mode :: "output" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "mode"
- prop Enum :: "input,output"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst bufalign :: 4 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}})
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 3")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst stsflg :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "statistics"
- prop JSName :: "statistics"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notify :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1})
- prop NoGen :: 0
- prop TabName :: "Notify Function"
- }
- inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "link type"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDHLAvailable :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Make this channel available for a new DHL device"
- prop JSName :: "availableForDHL"
- prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok")
- prop Writable :: self.modifiable()
- prop Visible :: 1
- prop NoGen :: 1
- }
- inst bufFrameAlign :: = self.bufalign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object LNK_dataPump :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @LNK_F_dataPump
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_dispatcher :: IDL {
- param iComment :: "This object cannot be deleted"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param function :: @RTA_F_dispatch
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object RTA_fromHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "input"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 4
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-object RTA_toHost :: HST {
- param iComment :: "Used to access LOG and STS data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HST"
- param iDelMsg :: "This object cannot be deleted"
- param mode :: "output"
- param bufseg :: IRAM
- param bufalign :: 4
- param buf :: "<NULL>"
- param framesize :: 64
- param numframes :: 1
- param stsflg :: 0
- param notify :: @_FXN_F_nop
- param arg0 :: 0
- param arg1 :: 0
- param iDHLAvailable :: 0
-}
-
-type HWI {
- isa ObjectMgr
- prop name :: "HWI"
- prop Label :: "HWI - Hardware Interrupt Service Routine Manager"
- prop IsContainedIn :: SCH
- prop SortChildHierView :: 0
- prop GlobalIcon :: 109
- prop InstanceIcon :: 110
- prop InstanceHelpTopic :: (205)
- prop GlobalHelpTopic :: (105)
- prop dataSize :: (0 * HWI.gNumOf)
- prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created"))
- prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}")
- prop DependsOn :: "GBL,OBJ,BUF,CLK,IDL,LCK,LOG,MBX,MEM,PIP,POOL,PRD,QUE,RTDX,SEM,STS,SYS"
- prop AllocType :: (if self.ZEROTAB {"1\0, _stubsAllocDesc, _memSeg, _placement"} else {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _loadvecSeg, _minplace"} else {"2\0, _stubsAllocDesc, _memSeg, _placement,
- _vectAllocDesc, _vecSeg, _minplace"}})
- prop _stubsAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.STUBMEMSEG != MEM.LOADSTUBMEMSEG)) {"%8t .%1L: {} load > %2s, run\0, name, _loadstubSeg"} else {"%8t .%1L: {} \0, name"})
- prop _vectAllocDesc :: (if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } run > %2s align = 0x400, RUN_START(%1U_A_VECS), load \0, name, _vecSeg"} else {"%8t .%1L_vec: {%12t\n *(.hwi_vec)%8t\n } align = 0x400, RUN_START(%1U_A_VECS)\0, name"})
- prop _placement :: (0x7fffffff / 2)
- prop _minplace :: 0
- prop GenLinkPrologue :: (if self.ZEROTAB {if ((MEM.ENABLELOADSEG) && (MEM.VECMEMSEG != MEM.LOADVECMEMSEG)) {"SECTIONS {%4t\n .%1L_vec: {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n } load > %2s, run = 0x0 %0t\n}\n\0 , name, _loadvecSeg"} else {"SECTIONS {%4t\n .%1L_vec: 0x0 {%8t\n %1U_A_VECS = .;\n *(.hwi_vec)%4t\n }%0t\n}\n\0, name"}} else {if self.GENERATE_RESET_VEC {"SECTIONS {%4t\n .%1L_reset: 0x%2x {}%0t\n}\n\0, name, resetvector"} else {""}})
- prop resetvector :: (self.RESETVECTORADDR)
- prop GenLinkEpilogue :: ("%0t_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;\n\0")
- prop localInit :: (if (RTDX.CALLBACKOBJ != nil) {self.error("HWI initialization failure.")} , RTDX.CALLBACKOBJ = HWI)
- prop call :: (if (RTDX.USERTDX == 0) {HWI_RESERVED1.function = @HWI_unused, HWI_RESERVED1.iUseDispatcher = 0, if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} } else {HWI_RESERVED1.function = @_RTDX_Poll, HWI_RESERVED1.iUseDispatcher = 1, if (RTDX.RTDXTYPE == "HSRTDX") {HWI_INT11.iSource = HSRTDX11, HWI_INT11.iReMappable = 0, HWI_INT11.function = @_HSRTDX_xmt, HWI_INT11.iUseDispatcher = 1, HWI_INT11.iIntrMask = "bitmask", HWI_INT11.IntrMask = 0x1808, HWI_INT11.client = "RTDX", HWI_INT12.iSource = HSRTDX12, HWI_INT12.iReMappable = 0, HWI_INT12.function = @_HSRTDX_rec, HWI_INT12.iUseDispatcher = 1, HWI_INT12.iIntrMask = "bitmask", HWI_INT12.IntrMask = 0x1808, HWI_INT12.client = "RTDX"} else {if (HWI_INT11.iSource == HSRTDX11 && HWI_INT11.function == @_HSRTDX_xmt) {HWI_INT11.iSource = MCSP_0_Receive, HWI_INT11.iReMappable = 1, HWI_INT11.function = @HWI_unused, HWI_INT11.iUseDispatcher = 0, HWI_INT11.iIntrMask = "self", HWI_INT11.IntrMask = 0x800, HWI_INT11.client = "USER"} , if (HWI_INT12.iSource == HSRTDX12 && HWI_INT12.function == @_HSRTDX_rec) {HWI_INT12.iSource = MCSP_1_Transmit, HWI_INT12.iReMappable = 1, HWI_INT12.function = @HWI_unused, HWI_INT12.iUseDispatcher = 0, HWI_INT12.iIntrMask = "self", HWI_INT12.IntrMask = 0x1000, HWI_INT12.client = "USER"} }})
- prop _memSeg :: MEM.STUBMEMSEG
- prop _loadstubSeg :: MEM.LOADSTUBMEMSEG
- prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"})
- prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0, @GBL_stackbeg, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b)
- prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13", "B14", "B15"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b)
- prop _vecSeg :: MEM.VECMEMSEG
- prop _loadvecSeg :: MEM.LOADVECMEMSEG
- prop HWIR0_DISP :: (if (HWI_RESERVED0.iUseDispatcher == 1) {0x4} else {0})
- prop HWIR1_DISP :: (if (HWI_RESERVED1.iUseDispatcher == 1) {0x8} else {0})
- prop HWI4_DISP :: (if (HWI_INT4.iUseDispatcher == 1) {0x10} else {0})
- prop HWI5_DISP :: (if (HWI_INT5.iUseDispatcher == 1) {0x20} else {0})
- prop HWI6_DISP :: (if (HWI_INT6.iUseDispatcher == 1) {0x40} else {0})
- prop HWI7_DISP :: (if (HWI_INT7.iUseDispatcher == 1) {0x80} else {0})
- prop HWI8_DISP :: (if (HWI_INT8.iUseDispatcher == 1) {0x100} else {0})
- prop HWI9_DISP :: (if (HWI_INT9.iUseDispatcher == 1) {0x200} else {0})
- prop HWI10_DISP :: (if (HWI_INT10.iUseDispatcher == 1) {0x400} else {0})
- prop HWI11_DISP :: (if (HWI_INT11.iUseDispatcher == 1) {0x800} else {0})
- prop HWI12_DISP :: (if (HWI_INT12.iUseDispatcher == 1) {0x1000} else {0})
- prop HWI13_DISP :: (if (HWI_INT13.iUseDispatcher == 1) {0x2000} else {0})
- prop HWI14_DISP :: (if (HWI_INT14.iUseDispatcher == 1) {0x4000} else {0})
- prop HWI15_DISP :: (if (HWI_INT15.iUseDispatcher == 1) {0x8000} else {0})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 65535 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 16 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STUBMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.codeMember($1)
- prop Label :: "Function Stub Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ZEROTAB :: = if (6211 == 6499 || 6211 == 6747 || 6211 == 6748) {0} else {self.VECMEMSEG.base == self.RESETVECTORADDR} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Writable :: 0
- prop Visible :: 0
- }
- global VECMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop Label :: "Interrupt Service Table Memory"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- prop MemberTest :: MEM.codeMember($1)
- prop Set :: (self.VECMEMSEG = $1, if ($1.base == 0) {self.GENERATE_RESET_VEC = 0} , "ok")
- }
- global GENERATE_RESET_VEC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Generate RESET vector"
- prop JSName :: "RESETVECTOR"
- prop Writable :: self.ZEROTAB == 0
- prop Visible :: 1
- prop NoGen :: 0
- }
- global RESETVECTORADDR :: 0 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Label :: "RESET vector address"
- prop JSName :: "RESETVECTORADDR"
- prop Format :: "0x%08x"
- prop Style :: 0x02
- prop Writable :: self.GENERATE_RESET_VEC
- prop Visible :: 1
- prop NoGen :: 1
- }
- global EXT4_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 4 Polarity"
- prop JSName :: "EXTPIN4POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT5_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 5 Polarity"
- prop JSName :: "EXTPIN5POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT6_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 6 Polarity"
- prop JSName :: "EXTPIN6POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global EXT7_POLARITY :: "low-to-high" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "low-to-high,high-to-low"
- prop Label :: "External Interrupt Pin 7 Polarity"
- prop JSName :: "EXTPIN7POLARITY"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global POLARITYMASK :: = (if self.EXT4_POLARITY == "high-to-low" {1} else {0}) | (if self.EXT5_POLARITY == "high-to-low" {1} else {0}) << 1 | (if self.EXT6_POLARITY == "high-to-low" {1} else {0}) << 2 | (if self.EXT7_POLARITY == "high-to-low" {1} else {0}) << 3 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global INTRMULTLOW :: = (HWI_INT4.iEventId) | (HWI_INT5.iEventId << 5) | (HWI_INT6.iEventId << 10) | (HWI_INT7.iEventId << 16) | (HWI_INT8.iEventId << 21) | (HWI_INT9.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global INTRMULTHIGH :: = (HWI_INT10.iEventId) | (HWI_INT11.iEventId << 5) | (HWI_INT12.iEventId << 10) | (HWI_INT13.iEventId << 16) | (HWI_INT14.iEventId << 21) | (HWI_INT15.iEventId << 26) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Writable :: 0
- prop Visible :: 0
- prop NoGen :: 0
- }
- global CFGDISPATCHED :: = (self.HWIR0_DISP | self.HWIR1_DISP | self.HWI4_DISP | self.HWI5_DISP | self.HWI6_DISP | self.HWI7_DISP | self.HWI8_DISP | self.HWI9_DISP | self.HWI10_DISP | self.HWI11_DISP | self.HWI12_DISP | self.HWI13_DISP | self.HWI14_DISP | self.HWI15_DISP) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "dispatched mask"
- prop Style :: 0x02
- prop Writable :: 1
- prop Visible :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iSource :: Reset {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: ISRC
- prop MemberTest :: 1
- prop Label :: "interrupt source"
- prop JSName :: "interruptSource"
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {if (GBL.DSPSUBTYPE == 6499 || GBL.DSPSUBTYPE == 6747 || GBL.DSPSUBTYPE == 6748) {0} else {1}}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a == Reset) {self.error("The Reset interrupt source cannot be remapped")} else {if ($a == Non_Maskable) {self.error("The Non-Maskable interrupt source cannot be remapped")} else {if ($a == Reserved) {self.error("The Reserved interrupt source cannot be remapped")} else {if (CLK.WHICHHWI == self && $a != self.iSource && CLK.USETIMER) {self.error("This interrupt is in use by CLK, settings may be changed in the CLK Manager")} else {if ($a == CLK.WHICHHWI.iSource && CLK.USETIMER == 1) {self.error("Interrupt source is in use by CLK, settings may be changed in the CLK Manager.")} else {$a.iHwi = self, self.iSource.iHwi = HWI_UNUSED, self.iSource = $1, self.iEventId = self.iSource.iIntrSelectNum, "ok"}}}}})
- }
- inst iEventId :: = self.iSource.iIntrSelectNum {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "interrupt selection number"
- prop JSName :: "interruptSelectNumber"
- prop Style :: 0x02
- prop Visible :: if (GBL.CLKTYPE == 700) {0} else {1}
- prop Writable :: if (GBL.CLKTYPE == 700) {0} else {self.iReMappable}
- prop NoGen :: 1
- }
- inst iReMappable :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIntrEnableMask :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @HWI_unused {
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1}
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop NoGen :: 0
- prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok")
- }
- inst iSTSObj :: HWI_RESETSTS {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst monitor :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,B14,B15"
- prop JSName :: "monitor"
- prop Visible :: 1
- prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0))
- prop NoGen :: 0
- prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"})
- }
- inst saveAddr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst saveType :: "signed" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst addr :: 0 {
- prop JSName :: "addr"
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Data Value" {1} else {0})
- prop NoGen :: 0
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"}
- prop Set :: (self.addr = $1, self.saveAddr = $1, "ok")
- }
- inst dataType :: "signed" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "signed,unsigned"
- prop Label :: "type"
- prop JSName :: "dataType"
- prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst operation :: "STS_add(*addr)" {
- prop Visible :: 1
- prop Writable :: (if self.monitor == "Nothing" {0} else {1})
- prop NoGen :: 0
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "operation"
- prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)"
- prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")})
- }
- inst client :: "USER" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iUseDispatcher :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Dispatcher"
- prop JSName :: "useDispatcher"
- prop Visible :: 1
- prop Writable :: if (self.client == "USER") {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if (($1 == 1) && (self == HWI_NMI)) {self.error("HWI dispatcher can't be used for NMI")} else {self.iUseDispatcher = $1, "ok"})
- }
- inst iArg :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Arg"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (self.iArg = $1, "ok")
- }
- inst iIntrMask :: "self" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Interrupt Mask"
- prop JSName :: "interruptMask"
- prop Enum :: "all,none,self,bitmask"
- prop Visible :: 1
- prop Writable :: if (self.iUseDispatcher == 1) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = 1 << self.iId} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok")
- }
- inst IntrMask :: (1 << self.iId) {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%04x"
- prop Style :: 0x02
- prop Label :: "Interrupt Bit Mask"
- prop JSName :: "interruptBitMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0}
- prop NoGen :: 0
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"})
- }
- inst iCacheControl :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't modify cache control"
- prop JSName :: "cacheControl"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ($1 == 1) {self.iCCBitMask = 0x1} else {self.iCCBitMask = (self.iPCCBitMask | self.iDCCBitMask)}, self.iCacheControl = $1, "ok")
- }
- inst iPCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Program Cache Control Mask"
- prop JSName :: "progCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iPCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iPCCBitMask = 0x0040} else {if ($1 == "cache freeze") {self.iPCCBitMask = 0x0060} else {self.iPCCBitMask = 0x0080}}}, self.iPCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iPCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDCCMask :: (if (GBL.DSPSUBTYPE == 6200 || GBL.DSPSUBTYPE == 6700) {"mapped"} else {"cache enable"}) {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "mapped,cache enable,cache freeze,cache bypass"
- prop Label :: "Data Cache Control Mask"
- prop JSName :: "dataCacheMask"
- prop Visible :: 1
- prop Writable :: if ((self.iUseDispatcher == 1) && (self.iCacheControl == 0)) {1} else {0}
- prop NoGen :: 1
- prop TabName :: "Dispatcher"
- prop Set :: (if ((GBL.DSPSUBTYPE == 6211 || GBL.DSPSUBTYPE == 6711 || GBL.DSPSUBTYPE == 6400) && $1 != "cache enable") {self.error("unsupported cache mode for 6x1x/64x device (cache enable must be selected)")} else {if ($1 == "mapped") {self.iDCCBitMask = 0x0000} else {if ($1 == "cache enable") {self.iDCCBitMask = 0x0008} else {if ($1 == "cache freeze") {self.iDCCBitMask = 0x000C} else {self.iDCCBitMask = 0x0010}}}, self.iDCCMask = $1, self.iCCBitMask = self.iPCCBitMask | self.iDCCBitMask, "ok"})
- }
- inst iDCCBitMask :: 0x0000 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCCBitMask :: 1 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iLoadTrack :: 0 {
- prop Label :: "Support CPU load tracking"
- prop JSName :: "loadTrack"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-object HWI_RESET_STS :: STS {
- param iComment :: "provides statistics for the RESET ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESET :: HWI {
- param iComment :: "defines function for the RESET ISR"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 0
- param iIntrEnableMask :: 1
- param function :: @_c_int00
- param iSTSObj :: HWI_RESET_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_NMI_STS :: STS {
- param iComment :: "provides statistics for the NMI ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_NMI :: HWI {
- param iComment :: "defines function for the NMI ISR"
- param iIsUsed :: 1
- param iId :: 1
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Non_Maskable
- param iReMappable :: 0
- param iIntrEnableMask :: 2
- param function :: @HWI_unused
- param iSTSObj :: HWI_NMI_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED0_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED0 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 2
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 4
- param function :: @RESERVED
- param iSTSObj :: HWI_RESERVED0_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_RESERVED1_STS :: STS {
- param iComment :: "This STS object is being used by a HWI object and cannot be deleted"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_RESERVED1 :: HWI {
- param iComment :: "RESERVED for RTDX"
- param iIsUsed :: 1
- param iId :: 3
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reserved
- param iReMappable :: 0
- param iIntrEnableMask :: 8
- param function :: @_RTDX_Poll
- param iSTSObj :: HWI_RESERVED1_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "RTDX"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT4_STS :: STS {
- param iComment :: "provides statistics for the INT4 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT4 :: HWI {
- param iComment :: "defines the INT4 Interrupt"
- param iIsUsed :: 1
- param iId :: 4
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Receive
- param iEventId :: 15
- param iReMappable :: 1
- param iIntrEnableMask :: 16
- param function :: @_ISR_AIC
- param iSTSObj :: HWI_INT4_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 1
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 16
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT5_STS :: STS {
- param iComment :: "provides statistics for the INT5 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT5 :: HWI {
- param iComment :: "defines the INT5 Interrupt"
- param iIsUsed :: 1
- param iId :: 5
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_5
- param iReMappable :: 1
- param iIntrEnableMask :: 32
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT5_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT6_STS :: STS {
- param iComment :: "provides statistics for the INT6 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT6 :: HWI {
- param iComment :: "defines the INT6 Interrupt"
- param iIsUsed :: 1
- param iId :: 6
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_6
- param iReMappable :: 1
- param iIntrEnableMask :: 64
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT6_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 64
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT7_STS :: STS {
- param iComment :: "provides statistics for the INT7 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT7 :: HWI {
- param iComment :: "defines the INT7 Interrupt"
- param iIsUsed :: 1
- param iId :: 7
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: External_Pin_7
- param iReMappable :: 1
- param iIntrEnableMask :: 128
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT7_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 128
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT8_STS :: STS {
- param iComment :: "provides statistics for the INT8 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT8 :: HWI {
- param iComment :: "defines the INT8 Interrupt"
- param iIsUsed :: 1
- param iId :: 8
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EDMA_Controller
- param iReMappable :: 1
- param iIntrEnableMask :: 256
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT8_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 256
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT9_STS :: STS {
- param iComment :: "provides statistics for the INT9 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT9 :: HWI {
- param iComment :: "defines the INT9 Interrupt"
- param iIsUsed :: 1
- param iId :: 9
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 512
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT9_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 512
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT10_STS :: STS {
- param iComment :: "provides statistics for the INT10 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT10 :: HWI {
- param iComment :: "defines the INT10 Interrupt"
- param iIsUsed :: 1
- param iId :: 10
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: EMIF_SDRAM_Timer
- param iReMappable :: 1
- param iIntrEnableMask :: 1024
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT10_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 1024
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT11_STS :: STS {
- param iComment :: "provides statistics for the INT11 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT11 :: HWI {
- param iComment :: "defines the INT11 Interrupt"
- param iIsUsed :: 1
- param iId :: 11
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_0_Receive
- param iReMappable :: 1
- param iIntrEnableMask :: 2048
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT11_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 2048
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT12_STS :: STS {
- param iComment :: "provides statistics for the INT12 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT12 :: HWI {
- param iComment :: "defines the INT12 Interrupt"
- param iIsUsed :: 1
- param iId :: 12
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: MCSP_1_Transmit
- param iReMappable :: 1
- param iIntrEnableMask :: 4096
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT12_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 4096
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT13_STS :: STS {
- param iComment :: "provides statistics for the INT13 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT13 :: HWI {
- param iComment :: "defines the INT13 Interrupt"
- param iIsUsed :: 1
- param iId :: 13
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Host_Port_Host_to_DSP
- param iReMappable :: 1
- param iIntrEnableMask :: 8192
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT13_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 8192
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT14_STS :: STS {
- param iComment :: "provides statistics for the INT14 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT14 :: HWI {
- param iComment :: "defines the INT14 Interrupt"
- param iIsUsed :: 1
- param iId :: 14
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_0
- param iEventId :: 1
- param iReMappable :: 1
- param iIntrEnableMask :: 16384
- param function :: @CLK_F_isr
- param iSTSObj :: HWI_INT14_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "CLK"
- param iUseDispatcher :: 1
- param iArg :: @CLK_A_TABBEG
- param iIntrMask :: "self"
- param IntrMask :: 16384
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_INT15_STS :: STS {
- param iComment :: "provides statistics for the INT15 ISR"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HWI"
- param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-object HWI_INT15 :: HWI {
- param iComment :: "defines the INT15 Interrupt"
- param iIsUsed :: 1
- param iId :: 15
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Timer_1
- param iReMappable :: 1
- param iIntrEnableMask :: 32768
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 32768
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-object HWI_UNUSED :: HWI {
- param iComment :: "a dummy DSP interrupt for unused sources"
- param iIsUsed :: 0
- param iId :: 16
- param iDelUser :: "HWI"
- param iDelMsg :: "Hardware interrupt objects cannot be deleted"
- param iSource :: Reset
- param iReMappable :: 1
- param iIntrEnableMask :: 0
- param function :: @HWI_unused
- param iSTSObj :: HWI_INT15_STS
- param monitor :: "Nothing"
- param saveAddr :: 0
- param saveType :: "signed"
- param addr :: 0
- param dataType :: "signed"
- param operation :: "STS_add(*addr)"
- param client :: "USER"
- param iUseDispatcher :: 0
- param iArg :: 0
- param iIntrMask :: "self"
- param IntrMask :: 65536
- param iCacheControl :: 1
- param iPCCMask :: "cache enable"
- param iPCCBitMask :: 0
- param iDCCMask :: "cache enable"
- param iDCCBitMask :: 0
- param iCCBitMask :: 1
- param iLoadTrack :: 0
-}
-
-type SWI {
- isa ObjectMgr
- prop name :: "SWI"
- prop Label :: "SWI - Software Interrupt Manager"
- prop IsContainedIn :: SCH
- prop DependsOn :: "HWI,SIO,HST,MSGQ"
- prop GlobalIcon :: 123
- prop InstanceIcon :: 124
- prop InstanceHelpTopic :: (211)
- prop GlobalHelpTopic :: (111)
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (SWI.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (SWI.STSFilterMaxMult($1))
- prop GetPriority :: (self.pri)
- prop objectSize :: (if ((GBL.DSPTYPE == 54 && GBL.FARMODE == 0) || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (12 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (14 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (20 * 4)} , if (GBL.DSPTYPE == 62) {$a = (11 * 4)} , $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {%4t\n} > %1s%2s\0, memSeg, pageString")
- prop GenLinkEpilogue :: ("%0t}\nSWI_A_TABLEN = %1d;\n\0, numInst")
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if SWI.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if SWI.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if SWI.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop memSeg :: SWI.OBJMEMSEG
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop maxObjs :: (32767)
- prop numInst :: (SWI.gNumOf)
- prop dataSize :: (self.objectSize() * SWI.gNumOf)
- prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"})
- prop localCreate :: (STS.gNumEmbed += 1, SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run, "ok")
- prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok")
- prop SortByField :: "pri"
- prop SortGroups :: 15
- prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global EHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Enable Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global IHOOKFXN :: @GBL_NULL {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Scheduler and Return to Idle Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXECFXN :: @SWI_F_exec {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global RUNFXN :: @SWI_F_run {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Configured SWI executive body"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst priority :: = (self.pri + 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "priority"
- prop JSName :: ""
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst pri :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14"
- prop Label :: "priority"
- prop JSName :: "priority"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}})
- }
- inst mailbox :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01 | 0x02
- prop JSName :: "mailbox"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst arg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst dorta :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-type TSK {
- isa ObjectMgr
- prop name :: "TSK"
- prop Label :: "TSK - Task Manager"
- prop IsConfMod :: self.USETSK
- prop IsContainedIn :: SCH
- prop DependsOn :: "SWI,HOOK"
- prop GlobalIcon :: 143
- prop InstanceIcon :: 144
- prop GlobalHelpTopic :: (314)
- prop InstanceHelpTopic :: (414)
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}")
- prop SortByField :: "iPRI"
- prop SortGroups :: 17
- prop objectSize :: (if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (27 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (44 * 4)} , if (GBL.DSPTYPE == 28) {$a = (40 * 4)} , if (GBL.DSPTYPE == 62 || (GBL.DSPTYPE == 54 && GBL.FARMODE == 0)) {$a = (24 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (25 * 4)} , $a)
- prop GenLinkPrologue :: (if (self.USETSK != 0) {"SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s\0, name, objSize, _bssmemSeg, linkString, pageString"} else {"_KNL_swi = 0;"})
- prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if TSK.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if TSK.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if TSK.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop GenLinkEpilogue :: (if (self.USETSK != 0) {"%0t}\n\0"} else {""})
- prop _objAllocDesc :: ("%8t .TSK$obj: {}")
- prop _bssmemSeg :: self.OBJMEMSEG
- prop _objmemSeg :: MEM.CFGOBJSEG
- prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"})
- prop _instStackDesc :: ("%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0")
- prop _self :: self
- prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)
- prop _instStackSeg :: self.iSTKSEG
- prop _placement :: (0x7fffffff / 2)
- prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")})
- prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0})
- prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1})
- prop uType :: (if (self.HighTimeBased()) {$a = 0} else {if (self.LowTimeBased()) {$a = 1} else {$a = 2}}, $a)
- prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSGetSumFmt :: (TSK.STSGetMaxFmt())
- prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}})
- prop STSFilterMaxMult :: ($a = 1)
- prop STSFilterSumMult :: (TSK.STSFilterMaxMult($1))
- prop localCreate :: (STS.gNumEmbed += 1, "ok")
- prop localCanCreate :: ($e = "ok", if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e)
- prop localDelete :: (STS.gNumEmbed -= 1, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"})
- prop NOPFXN :: @FXN_F_nop
- prop _objId :: self.iId
- prop objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + self.objectSize() * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d)
- prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a)
- prop maxObjs :: (32767)
- prop GetPriority :: (self.iPRI)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USETSK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable TSK Manager"
- prop JSName :: "ENABLETSK"
- prop Visible :: 1
- prop Writable :: if GBL.DSPSUBTYPE == 0x55DA200 {0} else {1}
- prop NoGen :: 1
- prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } , self.USETSK = $1, "ok"}} else {$e = "ok", GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {$e = self.error("Current stack size inadequate to enable TSK"), break} , scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.TSKTICK == "PRD") {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } , if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++} , $e} else {$e}})
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "OBJMEMSEG"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global STACKSIZE :: 1024 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Default stack size (MAUs)"
- prop JSName :: "STACKSIZE"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global STACKSEG :: MEM_NULL {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap
- prop Label :: "Stack segment for dynamic tasks"
- prop JSName :: "STACKSEG"
- prop Visible :: 1
- prop Writable :: self.USETSK && (MEM.NOHEAPS == 0)
- prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok")
- }
- global PRIORITY :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "PRIORITY"
- prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Label :: "Default task priority"
- prop Visible :: 1
- prop Writable :: self.USETSK
- }
- global CREATEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok")
- prop NoGen :: 1
- }
- global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DELETEFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok")
- prop NoGen :: 1
- }
- global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global EXITFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop TabName :: "Function Hooks"
- prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok")
- prop NoGen :: 1
- }
- global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global DOSWITCH :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "CALLSWITCHFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok")
- prop TabName :: "Function Hooks"
- }
- global VSWFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "SWITCHFXN"
- prop Visible :: 1
- prop NoGen :: 1
- prop Writable :: self.DOSWITCH && self.USETSK
- prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global SWITCHFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callSwitchFxn) {$i = 1} }, if ($i) {@__HOOK_doSwitch} else {0}} else {if (self.DOSWITCH) {self.VSWFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global DOREADY :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "CALLREADYFXN"
- prop Writable :: self.USETSK
- prop Visible :: 1
- prop NoGen :: 1
- prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok")
- prop TabName :: "Function Hooks"
- }
- global VRDYFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "READYFXN"
- prop Visible :: 1
- prop Writable :: self.DOREADY && self.USETSK
- prop NoGen :: 1
- prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok")
- prop TabName :: "Function Hooks"
- }
- global READYFXN :: = (if (HOOK_KNL.iIsUsed) {$i = 0, scan ($a; HOOK) {if ($a.callReadyFxn) {$i = 1} }, if ($i) {@__HOOK_doReady} else {0}} else {if (self.DOREADY) {self.VRDYFXN} else {0}}) {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop TabName :: "Function Hooks"
- }
- global NUM_HOOKS :: = HOOK.gNumOf {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- }
- global STSUNITS :: "raw" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "raw,milliseconds,microseconds"
- prop Label :: "Statistics Units"
- prop Visible :: 0
- prop Writable :: self.USETSK
- prop NoGen :: 1
- }
- global TSKTICK :: "PRD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "PRD,User"
- prop Label :: "TSK tick driven by"
- prop JSName :: "DRIVETSKTICK"
- prop Visible :: 1
- prop Writable :: self.USETSK
- prop NoGen :: 1
- prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (TSK.USETSK == 1) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @PRD_F_tick} } } , if ($1 == "User") {PRD.THOOKFXN = self.NOPFXN, if (PRD.gNumOf == 0) {if (PRD_clock.iIsUsed == 1) {PRD_clock.function = @FXN_F_nop} } } , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFXN :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Task function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG2 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 2"
- prop JSName :: "arg2"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG3 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 3"
- prop JSName :: "arg3"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG4 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 4"
- prop JSName :: "arg4"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG5 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 5"
- prop JSName :: "arg5"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG6 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 6"
- prop JSName :: "arg6"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iARG7 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "Task function argument 7"
- prop JSName :: "arg7"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- prop TabName :: "Function"
- }
- inst iAUTOSTK :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Automatically allocate stack"
- prop JSName :: "autoAllocateStack"
- prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok")
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "TSK" {0} else {1}
- }
- inst iMANSTK :: @null {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Manually allocated stack"
- prop JSName :: "manualStack"
- prop Visible :: 1
- prop Writable :: self.iAUTOSTK == 0
- }
- inst iSTKSZ :: TSK.STACKSIZE {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: if GBL.DSPTYPE == 54 {0x01} else {0x02}
- prop Label :: "Stack size (MAUs)"
- prop JSName :: "stackSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"})
- }
- inst iSTKSEG :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1)
- prop Label :: "Stack Memory Segment"
- prop JSName :: "stackMemSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iPRI :: TSK.PRIORITY {
- prop Label :: "Priority"
- prop JSName :: "priority"
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}})
- }
- inst iENV :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Environment pointer"
- prop JSName :: "envPointer"
- prop Visible :: 1
- prop Writable :: self.iDelUser != "TSK"
- prop TabName :: "Advanced"
- }
- inst iEXITFLAG :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Don't shut down system while this task is still running"
- prop JSName :: "exitFlag"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iUSETSKNAME :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Task Name on Target"
- prop JSName :: "allocateTaskName"
- prop Visible :: 1
- prop Writable :: 1
- prop TabName :: "Advanced"
- }
- inst iSTATREG :: = GBL.CACHE {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "0x%08x"
- prop Label :: "Initial Status Register value"
- prop Visible :: 0
- prop Writable :: 1
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 0
- prop Writable :: 1
- }
- inst filter :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: self.STSGetMaxFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: self.STSGetSumFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: self.STSGetAvgFmt() {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst filtmaxmult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtmaxmult"
- prop NoGen :: 0
- }
- inst filtsummult :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filtsummult"
- prop NoGen :: 0
- }
- inst unittype :: self.uType() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "unittype"
- prop NoGen :: 0
- }
-}
-
-object TSK_idle :: TSK {
- param iComment :: "This is the idle task; it only runs when no other task is ready"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This task executes all IDL functions and cannot be deleted"
- param iFXN :: @IDL_F_loop
- param iARG0 :: 0
- param iARG1 :: 0
- param iARG2 :: 0
- param iARG3 :: 0
- param iARG4 :: 0
- param iARG5 :: 0
- param iARG6 :: 0
- param iARG7 :: 0
- param iAUTOSTK :: 1
- param iMANSTK :: @null
- param iSTKSZ :: 1024
- param iSTKSEG :: IRAM
- param iPRI :: 0
- param iENV :: 0
- param iEXITFLAG :: 1
- param iUSETSKNAME :: 0
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-object KNL_swi :: SWI {
- param iComment :: "This Software Interrupt calls the TSK scheduler"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "TSK"
- param iDelMsg :: "This object cannot be deleted in DSP/BIOS."
- param function :: @_KNL_run
- param pri :: 0
- param mailbox :: 0
- param arg0 :: 0
- param arg1 :: 0
- param dorta :: 1
- param Order :: 0
- param filter :: 2
- param maxformat :: "%g inst"
- param sumformat :: "%g inst"
- param avgformat :: "%.2f inst"
- param filtmaxmult :: 1
- param filtsummult :: 1
- param unittype :: 0
-}
-
-type IDL {
- isa ObjectMgr
- prop Label :: "IDL - Idle Function Manager"
- prop name :: "IDL"
- prop IsContainedIn :: SCH
- prop GlobalIcon :: 111
- prop InstanceIcon :: 112
- prop GlobalHelpTopic :: (106)
- prop InstanceHelpTopic :: (206)
- prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}")
- prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}")
- prop objectSize :: (if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {$a = (2 * 4)} else {$a = (1 * 4)}, $a)
- prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_TABBEG)\0, name, _objSize, _memSeg, _linkString, _pageString")
- prop GenLinkEpilogue :: ("%4t\n.%1Lcal: {%8t\n %4S %4t\n} > %3s%5s, RUN_START(%1U_A_CALBEG) %0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj")
- prop _linkString :: "*(.%1L)"
- prop _linkCalString :: "*(.%1Lcal)"
- prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if IDL.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if IDL.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if IDL.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}}
- prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""})
- prop _memSeg :: IDL.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (IDL.gNumOf + 1))
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 3 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global AUTOCALCULATE :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Auto calculate idle loop instruction count"
- prop JSName :: "AUTOCALCULATE"
- prop Visible :: 1
- prop Writable :: CLK.USETIMER
- prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instruction count")} else {self.AUTOCALCULATE = $1, "ok"}})
- prop NoGen :: 1
- }
- global USECLKIDLTIME :: = IDL.AUTOCALCULATE {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global USEIDLBUSYOBJ :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Function"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Idle Loop Auto-Calibrate Error"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- global LOOPOVERHEAD :: 0 {
- prop Label :: "Idle Loop Instruction Count"
- prop JSName :: "LOOPINSTCOUNT"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.AUTOCALCULATE == 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst function :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- }
- inst cycles :: 0 {
- prop Label :: "CPU cycles"
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 1
- }
- inst calibration :: 1 {
- prop Label :: "Include in CPU load calibration"
- prop JSName :: "calibration"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if (self.iDelUser == "USER") {1} else {0}
- prop NoGen :: 0
- }
- inst Order :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object IDL_cpuLoad :: IDL {
- param iComment :: "This object is required by the system to acquire CPU load data"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to compute CPU load and can't be deleted"
- param function :: @IDL_F_busy
- param cycles :: 0
- param calibration :: 1
- param Order :: 0
- param iPri :: 0
-}
-
-object IDL_busyObj :: STS {
- param iComment :: "This object is required by the system to accumulate CPU load statistics"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "IDL"
- param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted"
- param prev :: 0
- param format :: "%g"
- param filter :: 1
- param maxformat :: "%g"
- param sumformat :: "%g"
- param avgformat :: "%.2f"
- param unittype :: "Not time based"
- param operation :: "Nothing"
- param iA :: 1
- param iB :: 0
- param iC :: 1
- param prevhigh :: 0
- param prevlow :: 0
-}
-
-type ISRC {
- isa ObjectMgr
- prop name :: "ISRC"
- prop Label :: "ISRC - Interrupt Sources"
- prop IsConfMod :: 1
- prop Visible :: 0
- prop InstancePropertyPage :: ("{91BA37C0-98C3-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{91BA37C1-98C3-11d1-988B-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHwi :: HWI_UNUSED {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: HWI
- prop MemberTest :: 1
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iIntrSelectNum :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
-}
-
-object Reset :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESET
- param iIntrSelectNum :: -1
-}
-
-object Non_Maskable :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_NMI
- param iIntrSelectNum :: -1
-}
-
-object Reserved :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_RESERVED0
- param iIntrSelectNum :: -1
-}
-
-object Host_Port_Host_to_DSP :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT13
- param iIntrSelectNum :: 0
-}
-
-object DSPINT :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 0
-}
-
-object Timer_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT14
- param iIntrSelectNum :: 1
-}
-
-object Timer_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT15
- param iIntrSelectNum :: 2
-}
-
-object EMIF_SDRAM_Timer :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT10
- param iIntrSelectNum :: 3
-}
-
-object External_Pin_4 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 4
-}
-
-object External_Pin_5 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT5
- param iIntrSelectNum :: 5
-}
-
-object External_Pin_6 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT6
- param iIntrSelectNum :: 6
-}
-
-object External_Pin_7 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT7
- param iIntrSelectNum :: 7
-}
-
-object EDMA_Controller :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT8
- param iIntrSelectNum :: 8
-}
-
-object HSRTDX11 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT11
- param iIntrSelectNum :: 10
-}
-
-object HSRTDX12 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT12
- param iIntrSelectNum :: 11
-}
-
-object MCSP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 12
-}
-
-object MCSP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 13
-}
-
-object MCSP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 14
-}
-
-object MCSP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_INT4
- param iIntrSelectNum :: 15
-}
-
-object GPIO_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 16
-}
-
-object I2C_Interrupt_0 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 22
-}
-
-object I2C_Interrupt_1 :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 23
-}
-
-object MCASP_0_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 28
-}
-
-object MCASP_0_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 29
-}
-
-object MCASP_1_Transmit :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 30
-}
-
-object MCASP_1_Receive :: ISRC {
- param iComment :: "<add comments here>"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param iHwi :: HWI_UNUSED
- param iIntrSelectNum :: 31
-}
-
-type LOG {
- isa ObjectMgr
- prop name :: "LOG"
- prop Label :: "LOG - Event Log Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 113
- prop InstanceIcon :: 114
- prop InstanceHelpTopic :: (207)
- prop GlobalHelpTopic :: (107)
- prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}")
- prop maxObjs :: (32767)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop objectSize :: (if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (10 * 4)} , if (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 54 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL")) {$a = (6 * 4)} , $a)
- prop _placement :: (0x7fffffff / 2)
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tLOG_A_TABLEN = %1d; _LOG_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x {}\0, _objAlign")
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop _memSeg :: LOG.OBJMEMSEG
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}
- prop _objMemSeg :: self.bufseg
- prop LogType :: self.iType
- prop LogFormat :: self.iFormat
- prop pageString :: (if GBL.DSPTYPE == 62 {""} else {if (GBL.DSPTYPE == 55 || GBL.DSPTYPE == 28) {(if LOG.OBJMEMSEG.space() == "code" {" PAGE 0"} else {if LOG.OBJMEMSEG.space() == "data" {" PAGE 1"} else {if LOG.OBJMEMSEG.space() == "io" {" PAGE 2"} else {" PAGE 0"}}})} else {" PAGE 1"}})
- prop numInst :: (LOG.gNumOf)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"})
- prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += self.objectSize()}, $d)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ENABLED :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Compile in logging"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global TS :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "timestamped LOGs"
- prop JSName :: "TS"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "bufseg"
- prop JSName :: "bufSeg"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst buflen :: 64 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432"
- prop Label :: "buflen (words)"
- prop JSName :: "bufLen"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok")
- }
- inst logtype :: "circular" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "circular,fixed"
- prop Label :: "logtype"
- prop JSName :: "logType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iType :: "printf" {
- prop Label :: "datatype"
- prop JSName :: "dataType"
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "printf,raw data"
- prop Visible :: 1
- prop Writable :: if self.iType == "system" {0} else {1}
- prop NoGen :: 0
- }
- inst iFormat :: "0x%x, 0x%x, 0x%x" {
- prop Label :: "format"
- prop JSName :: "format"
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: if self.iType == "raw data" {1} else {0}
- prop NoGen :: 0
- }
-}
-
-object LOG_system :: LOG {
- param iComment :: "This object is required by the system to accumulate execution trace information"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "LOG"
- param iDelMsg :: "LOG_system is a system log and cannot be deleted."
- param bufseg :: IRAM
- param buflen :: 64
- param logtype :: "circular"
- param iType :: "system"
- param iFormat :: "0x%x, 0x%x, 0x%x"
-}
-
-type PIP {
- isa ObjectMgr
- prop Label :: "PIP - Buffered Pipe Manager"
- prop IsContainedIn :: IOF
- prop GlobalIcon :: 117
- prop InstanceIcon :: 118
- prop GlobalHelpTopic :: (109)
- prop InstanceHelpTopic :: (209)
- prop name :: "PIP"
- prop maxObjs :: (32767)
- prop objectSize :: (if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (27 * 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (34 * 4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (30 * 4)} , if (GBL.DSPTYPE == 28 || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") || (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE")) {$a = (50 * 4)} , if (GBL.DSPTYPE == 62) {$a = (25 * 4)} , $a)
- prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (12 + $i.framesize) * $i.numframes + self.objectSize()} }, $b)
- prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}")
- prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}")
- prop localCreate :: ("ok")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement")
- prop GenLinkEpilogue :: ("%0tPIP_A_TABLEN = %1d;\n\0, numInst")
- prop _instAllocDesc :: (if self.bufalign > 0 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"})
- prop _placement :: (0x7fffffff / 2)
- prop _objId :: self.iId
- prop _objAlign :: self.bufalign * 4
- prop _objMemSeg :: self.bufseg
- prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: PIP.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop numInst :: (HST.gNumOf + PIP.gNumOf)
- prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 2 {
- prop NoGen :: 0
- }
- global gNextId :: 0
- global OBJSIZE :: = self._objSize
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst bufseg :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "bufSeg"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- }
- inst bufalign :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "bufAlign"
- prop Style :: 0x01 | 0x02
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 1
- prop Set :: ($e = "ok", if ($1 == 0) {$e = self.error("Cannot set align value to 0")} else {self.bufalign = $1}, $e)
- }
- inst buf :: "<NULL>" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst framesize :: 8 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "framesize (words)"
- prop JSName :: "frameSize"
- prop Style :: if GBL.DSPTYPE == 62 {0x02} else {0x01 | 0x02}
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"})
- }
- inst numframes :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop JSName :: "numFrames"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"})
- }
- inst monitor :: "reader" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "monitor"
- prop Enum :: "reader,writer,none"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst notifyWriter :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nwarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyWriterArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst notifyReader :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderFxn"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg0 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg0"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst nrarg1 :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: "notifyReaderArg1"
- prop Visible :: 1
- prop Writable :: (if self.iDelUser == "USER" {1} else {0})
- prop NoGen :: 0
- prop TabName :: "Notify Functions"
- }
- inst bufFrameAlign :: = self._objAlign {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SEM {
- isa ObjectMgr
- prop name :: "SEM"
- prop Label :: "SEM - Semaphore Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 137
- prop InstanceIcon :: 138
- prop GlobalHelpTopic :: (310)
- prop InstanceHelpTopic :: (410)
- prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .sem: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (8 + 3)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (10 + 4)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (8 + 3)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (16 + 6)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (10 + 4)} , if (GBL.DSPTYPE == 28) {$a = (16 + 6)} , $a)
- prop dataSize :: (SEM.objectSize * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iCount :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Initial semaphore count"
- prop JSName :: "count"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type MBX {
- isa ObjectMgr
- prop name :: "MBX"
- prop Label :: "MBX - Mailbox Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (307)
- prop InstanceHelpTopic :: (407)
- prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .mbx: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement")
- prop _instAllocDesc :: ("%8t .%0s$que: align = 0x4 {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize")
- prop _instMemSeg :: self.iMbxSeg
- prop _qElemSize :: (if ((GBL.DSPTYPE == 55) && (GBL.DSPSUBTYPE != 5599)) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength * 2} else {if (GBL.DSPTYPE == 28) {$a = self.iMsgSize, if ($a & 0x1) {$a += 1} , (8 + $a) * self.iMbxLength} else {$a = self.iMsgSize, $b = GBL.DSPWORDSIZE / GBL.DSPCHARSIZE, $c = $a & ($b - 1), if ($c != 0) {$a = $a + ($b - $c)} , (8 + $a) * self.iMbxLength}})
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (29)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (28)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (24)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (46)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (28)} , if (GBL.DSPTYPE == 28) {$a = (46)} , $a)
- prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + self.objectSize())}, $d)
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iMsgSize :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Message Size"
- prop JSName :: "messageSize"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"})
- }
- inst iMbxLength :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Mailbox Length"
- prop JSName :: "length"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"})
- }
- inst iMbxSeg :: MBX.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Element memory segment"
- prop JSName :: "elementSeg"
- prop Visible :: 1
- prop Writable :: 1
- }
-}
-
-type QUE {
- isa ObjectMgr
- prop name :: "QUE"
- prop Label :: "QUE - Atomic Queue Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 133
- prop InstanceIcon :: 134
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (309)
- prop InstanceHelpTopic :: (409)
- prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .que: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (2)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (2)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (4)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (2)} , if (GBL.DSPTYPE == 28) {$a = (4)} , $a)
- prop dataSize :: (QUE.objectSize * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type LCK {
- isa ObjectMgr
- prop name :: "LCK"
- prop Label :: "LCK - Resource Lock Manager"
- prop IsContainedIn :: SYN
- prop GlobalIcon :: 129
- prop InstanceIcon :: 130
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (306)
- prop InstanceHelpTopic :: (406)
- prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .lck: {}")
- prop _objAllocDesc :: ("%8t .LCK$obj: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (10)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (12)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (10)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (20)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (12)} , if (GBL.DSPTYPE == 28) {$a = (20)} , $a)
- prop dataSize :: (LCK.objectSize * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"lck.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LCK_Obj %0r;\n\0"} else {"extern LCK_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type STS {
- isa ObjectMgr
- prop name :: "STS"
- prop Label :: "STS - Statistics Object Manager"
- prop IsContainedIn :: INS
- prop GlobalIcon :: 125
- prop InstanceIcon :: 126
- prop InstanceHelpTopic :: (212)
- prop GlobalHelpTopic :: (112)
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement")
- prop _globalAllocDesc :: ("%8t .%1L: RUN_START(%1U_A_TABBEG), RUN_START(_%1U_A_TABBEG), RUN_END(%1U_A_TABEND), RUN_END(_%1U_A_TABEND) {%8t\n }\0, name")
- prop localInit :: (if (PRD.CALLBACKOBJ != nil) {self.error("STS initialization failure")} , PRD.CALLBACKOBJ = STS)
- prop objectSize :: ((4 * 4))
- prop _placement :: (0x7fffffff / 2)
- prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"}
- prop _memSeg :: STS.OBJMEMSEG
- prop _objSize :: if GBL.DSPTYPE == 55 {(2 * self.objectSize())} else {self.objectSize()}
- prop dataSize :: (self.objectSize() * (STS.gNumOf + STS.gNumEmbed))
- prop maxObjs :: (32767)
- prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}")
- prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}")
- prop STSGetMaxFmt :: (self.format)
- prop STSGetSumFmt :: (self.format)
- prop STSGetAvgFmt :: ("%.2f")
- prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC))
- prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC))
- prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0})
- prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0})
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"})
- prop modifiable :: ((if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}))
- prop untype :: (if (self.unittype == "Not time based") {$a = 2} , if (self.unittype == "High resolution time based") {$a = 0} , if (self.unittype == "Low resolution time based") {$a = 1} , $a)
- prop optype :: (if (self.operation == "Nothing") {$a = 0} , if (self.operation == "A * x") {$a = 1} , if (self.operation == "A * x + B") {$a = 2} , if (self.operation == "(A * x + B) / C") {$a = 3} , $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global gNumEmbed :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst prev :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop JSName :: "previousVal"
- prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62
- prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok")
- }
- inst format :: "%g" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "format"
- prop NoGen :: 1
- }
- inst filter :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "filter"
- prop NoGen :: 0
- }
- inst maxformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "maxformat"
- prop NoGen :: 0
- }
- inst sumformat :: "%g" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "sumformat"
- prop NoGen :: 0
- }
- inst avgformat :: "%.2f" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop Label :: "avgformat"
- prop NoGen :: 0
- }
- inst unittype :: "Not time based" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Not time based,High resolution time based,Low resolution time based"
- prop Label :: "unit type"
- prop JSName :: "unitType"
- prop Visible :: 1
- prop Writable :: self.modifiable()
- prop NoGen :: 1
- prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok")
- }
- inst operation :: "Nothing" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C"
- prop Label :: "host operation"
- prop JSName :: "operation"
- prop Visible :: 1
- prop Writable :: ((self.unittype != "Low resolution time based") && self.modifiable())
- prop NoGen :: 1
- prop Set :: (self.operation = $1, if ($1 == "Nothing" && self.unittype != "High resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok")
- }
- inst op :: = self.optype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst uType :: = self.untype() {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iA :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype != "Not time based" || self.operation == "Nothing"))
- prop Label :: "A"
- prop JSName :: "numA"
- prop NoGen :: 0
- }
- inst iB :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && !(self.unittype == "Low resolution time based" || self.operation == "Nothing" || self.operation == "A * x"))
- prop Label :: "B"
- prop JSName :: "numB"
- prop NoGen :: 0
- }
- inst iC :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: (self.modifiable() && (self.unittype == "Not time based" && self.operation == "(A * x + B) / C"))
- prop Label :: "C"
- prop JSName :: "numC"
- prop NoGen :: 0
- }
- inst prevhigh :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62
- }
- inst prevlow :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
-}
-
-type SYS {
- isa Module
- prop name :: "SYS"
- prop Label :: "SYS - System Settings"
- prop IsContainedIn :: SYSTEM
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop IsConfMod :: 1
- prop GlobalHelpTopic :: (313)
- prop InstanceHelpTopic :: (413)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"})
- prop _globalAllocDesc :: ("%8t .sys: {}")
- prop _traceString :: ("%8t .trace: fill = 0x0 align = 0x4 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _traceSeg :: SYS.TRACESEG
- prop _traceSize :: SYS.TRACESIZE
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global TRACESIZE :: 512 {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Format :: "%d"
- prop Style :: 0x01 | 0x02
- prop Label :: "Trace Buffer Size"
- prop JSName :: "TRACESIZE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global TRACESEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Trace Buffer Memory"
- prop JSName :: "TRACESEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global ABORTFXN :: @_UTL_doAbort {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Abort Function"
- prop JSName :: "ABORTFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global ERRORFXN :: @_UTL_doError {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Error Function"
- prop JSName :: "ERRORFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global EXITFXN :: @_UTL_halt {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit Function"
- prop JSName :: "EXITFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global PUTCFXN :: @_UTL_doPutc {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Putc Function"
- prop JSName :: "PUTCFXN"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type SIO {
- isa ObjectMgr
- prop name :: "SIO"
- prop Label :: "SIO - Stream Input and Output Manager"
- prop IsContainedIn :: IOF
- prop DependsOn :: "DIO,DGN,DHL,DPI"
- prop GlobalIcon :: 139
- prop InstanceIcon :: 140
- prop GlobalHelpTopic :: (311)
- prop InstanceHelpTopic :: (411)
- prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement,
- _objAllocDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }")
- prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement")
- prop _instBufDesc :: (if self.iAlign > 1 {"%8t .%0s$bufs: align = 0x%1x {}\0, _objAlign"} else {"%8t .%0s$bufs: {}"})
- prop _objAlign :: self.iAlign
- prop _instBufSeg :: self.iBufSegid
- prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j)
- prop devList :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, scan ($a; DIO) {if ($a == $i) {$i.numTimeUse++} }, break} }} }, $j)
- prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j)
- prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"})
- prop localDelete :: (scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, "ok")
- prop cGen :: 1
- prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""}
- prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumEmbed :: 0 {
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global USEISSUERECLAIM :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use Only Issue/Reclaim Model"
- prop JSName :: "USEISSUERECLAIM"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.USEISSUERECLAIM = $1, if ($1 == 1) {scan ($i; SIO) {$i.iModelName = "Issue/Reclaim"}} , "ok")
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: SIO.devList {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop TypeTest :: $1.isDriver == 1
- prop MemberTest :: $1.driverType != "DEV_IOMTYPE"
- prop Label :: "Device"
- prop JSName :: "deviceName"
- prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control String")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {scan ($a; DIO) {if ($a == self.iDevice) {self.iDevice.numTimeUse--} }, scan ($b; DIO) {if ($b == $1) {$1.numTimeUse++} }, self.iDevice = self.setDev($1), "ok"}})
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevCtrlParam :: "" {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Device Control String"
- prop JSName :: "controlParameter"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iDevId :: = self.iDevice.iDevId
- inst iFxns :: = self.iDevice.iFxns
- inst iMode :: "input" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "input,output"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufsize :: 0x80 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x02
- prop Label :: "Buffer size"
- prop JSName :: "bufSize"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iNbufs :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Label :: "Number of buffers"
- prop JSName :: "numBufs"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iBufSegid :: = self.OBJMEMSEG {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Place buffers in memory segment"
- prop JSName :: "bufSegId"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iAlign :: 1 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
- prop Label :: "Buffer alignment"
- prop JSName :: "bufAlign"
- prop Visible :: 1
- prop Writable :: self.iAllocBuf == 1
- }
- inst iFlush :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Flush"
- prop JSName :: "flush"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst iModelName :: "Standard" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "Standard,Issue/Reclaim"
- prop Label :: "Model"
- prop JSName :: "modelName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($e = "ok", if (self.USEISSUERECLAIM == 1) {if ($1 == "Standard") {$e = self.error("SIO Issue/Reclaim model support selected")} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}} else {self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1}, $e)
- }
- inst iAllocBuf :: = self.iSaveAllocBuf {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Allocate Static Buffer(s)"
- prop JSName :: "allocStaticBuf"
- prop Visible :: 1
- prop Writable :: 1
- prop Set :: (self.iSaveAllocBuf = $1, "ok")
- }
- inst iSaveAllocBuf :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iModel :: "SIO_STANDARD" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM"
- prop Visible :: 0
- prop Writable :: 0
- }
- inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Timeout for I/O operation"
- prop JSName :: "timeout"
- prop Visible :: 1
- prop Writable :: self.iModel == "SIO_ISSUERECLAIM"
- prop Set :: (self.iSaveTimeout = $1, "ok")
- }
- inst iSaveTimeout :: -1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback function"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst callBackFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "callback function"
- prop JSName :: "callBackFxn"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg0 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 0"
- prop JSName :: "arg0"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
- inst arg1 :: 0 {
- prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}"
- prop Label :: "argument 1"
- prop JSName :: "arg1"
- prop Visible :: 1
- prop Writable :: self.useCallBackFxn
- prop NoGen :: 0
- prop TabName :: "Callback"
- }
-}
-
-type GIO {
- isa Module
- prop Visible :: 1
- prop name :: "GIO"
- prop Label :: "GIO - General Input/Output Manager"
- prop IsConfMod :: self.USEGIO
- prop IsContainedIn :: IOF
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 141
- prop InstanceIcon :: 142
- prop GlobalHelpTopic :: (320)
- prop InstanceHelpTopic :: (420)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _midPlace")
- prop _globalAllocDesc :: ("%8t .gio: {}")
- prop _midPlace :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global CALLBACKOBJ :: nil {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEGIO :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable General Input/Output Manager"
- prop JSName :: "ENABLEGIO"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global CREATEFXN :: = if self.USEGIO == 1 {@_SEM_create} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create Function"
- prop JSName :: "CREATEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global DELETEFXN :: = if self.USEGIO == 1 {@_SEM_delete} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete Function"
- prop JSName :: "DELETEFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global PENDFXN :: = if self.USEGIO == 1 {@_SEM_pend} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Pend Function"
- prop JSName :: "PENDFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
- global POSTFXN :: = if self.USEGIO == 1 {@_SEM_post} else {@_FXN_F_nop} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Post Function"
- prop JSName :: "POSTFXN"
- prop Visible :: 1
- prop Writable :: self.USEGIO
- prop NoGen :: 0
- }
-}
-
-type DEV {
- isa ObjectMgr
- prop name :: "DEV"
- prop Visible :: 0
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} , if (self.devCount() > 0) {"1\0, _devtableDesc, _memSeg, _placement"} )
- prop _bssAllocDesc :: ("%8t .dev: {}")
- prop _devtableDesc :: ("%8t .devtable: {}")
- prop _memSeg :: MEM.CFGOBJSEG
- prop _placement :: (0x7fffffff / 2)
- prop DependsOn :: "HWI"
- prop devCount :: ($i = nil, $a = 0, scan ($i; nil) {if ($i.isDriver == 1) {$a = $a + $i.gNumOf} }, $a)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
-}
-
-type UDEV {
- isa ObjectMgr
- prop name :: "UDEV"
- prop Label :: "User-Defined Devices"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "DEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (315)
- prop InstanceHelpTopic :: (415)
- prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}")
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .udev: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- prop _driverType :: (if self.fxnTableType == "DEV_Fxns" {"DEV_SIOTYPE"} else {"DEV_IOMTYPE"})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iInit :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "init function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iInit = $1, self.initFxn = self.iInit, "ok")
- }
- inst iFxns :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "function table ptr"
- prop JSName :: "fxnTable"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst fxnTableType :: "DEV_Fxns" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_Fxns,IOM_Fxns"
- prop Label :: "function table type"
- prop JSName :: "fxnTableType"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst driverType :: = self._driverType {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: "DEV_SIOTYPE,DEV_IOMTYPE"
- prop Visible :: 0
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device id"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: (self.iDevId = $1, self.deviceId = self.iDevId, "ok")
- }
- inst iParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device params ptr"
- prop JSName :: "params"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst deviceId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst initFxn :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop JSName :: ""
- prop Visible :: 0
- }
- inst iIsStacking :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Stacking Device"
- prop JSName :: "stackingDevice"
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst deviceGlobalDataPtr :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "device global data ptr"
- prop JSName :: "deviceGlobalDataPtr"
- prop Visible :: 1
- prop Writable :: self.fxnTableType == "IOM_Fxns"
- }
- inst iIsTerminal :: = if self.fxnTableType == "DEV_Fxns" {1} else {0} {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DIO {
- isa ObjectMgr
- prop Visible :: 1
- prop Label :: "DIO - Class Driver"
- prop name :: "DIO"
- prop IsContainedIn :: SIODRIVER
- prop DependsOn :: "UDEV"
- prop GlobalIcon :: 127
- prop InstanceIcon :: 127
- prop GlobalHelpTopic :: (319)
- prop InstanceHelpTopic :: (419)
- prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}")
- prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}")
- prop maxObjs :: (32767)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dio: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: self.OBJMEMSEG
- prop isDriver :: (1)
- prop mdObject :: ($h = nil, $j = nil, scan ($h; UDEV) {if ($h.driverType == "DEV_IOMTYPE") {$j = $h, break} }, $j)
- prop localCanCreate :: (if (self.mdObject == nil) {self.error("An IOM type device must be created first.")} else {"ok"})
- prop numTsk :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 0) {$a = $a + $h.numTimeUse} }, $a)
- prop numSwi :: ($a = 0, $h = nil, scan ($h; DIO) {if ($h.useCallBackFxn == 1) {$a = $a + $h.numTimeUse} }, $a)
- prop functionTablePtr :: (if (self.STATIC) {if (self.useCallBackFxn) {@_DIO_cbStaticFxns} else {@_DIO_tskStaticFxns}} else {if (self.useCallBackFxn) {@_DIO_cbDynamicFxns} else {@_DIO_tskDynamicFxns}})
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- global STATIC :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Create all DIO Objects Statically"
- prop JSName :: "STATICCREATE"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- global NUMTSKBASE :: = self.numTsk {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "TSK based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- global NUMSWIBASE :: = self.numSwi {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "SWI based"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst useCallBackFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "use callback version of DIO function table (for SWI)"
- prop JSName :: "useCallBackFxn"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst fxnsTable :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst initFxn :: @_DIO_init {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst deviceName :: self.mdObject {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: UDEV
- prop MemberTest :: $1.driverType == "DEV_IOMTYPE"
- prop Label :: "device name"
- prop JSName :: "deviceName"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst chanParams :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "channel parameters"
- prop JSName :: "chanParams"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst numTimeUse :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iFxns :: = self.functionTablePtr {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
-}
-
-type DGN {
- isa ObjectMgr
- prop name :: "DGN"
- prop Label :: "DGN - Software Generator Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (302)
- prop InstanceHelpTopic :: (402)
- prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: ("%8t .dgn: {}")
- prop _placement :: (0x7fffffff / 2)
- prop _memSeg :: MEM.CFGOBJSEG
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevice :: "user" {
- prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"}
- prop Label :: "Device category"
- prop JSName :: "device"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok")
- }
- inst iUseDefaults :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Use default parameters"
- prop Visible :: 1
- prop JSName :: "useDefaultParam"
- prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user"
- }
- inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Device ID"
- prop JSName :: "deviceId"
- prop Visible :: 1
- prop Writable :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Constant value"
- prop JSName :: "constant"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user")
- }
- inst iRandSeed :: 1 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Seed value"
- prop JSName :: "seedValue"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Lower limit"
- prop JSName :: "lowerLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Upper limit"
- prop JSName :: "upperLimit"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user")
- }
- inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Gain"
- prop JSName :: "gain"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Frequency (Hz)"
- prop JSName :: "frequency"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} {
- prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
- prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04}
- prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"}
- prop Label :: "Phase (radians)"
- prop JSName :: "phase"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Sample rate (samples/sec)"
- prop JSName :: "rate"
- prop Visible :: 1
- prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user")
- }
- inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function"
- prop JSName :: "fxn"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok")
- }
- inst iSaveUserFxn :: @_FXN_F_nop {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iUserArg :: = 0 {
- prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "User function argument"
- prop JSName :: "arg"
- prop Visible :: 1
- prop Writable :: self.iDevice == "user"
- }
- inst iFxns :: @_DGN_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DHL {
- isa ObjectMgr
- prop name :: "DHL"
- prop Label :: "DHL - Host Link Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalHelpTopic :: (303)
- prop InstanceHelpTopic :: (403)
- prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}")
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop DependsOn :: "DEV"
- prop Visible :: 1
- prop isDriver :: 1
- prop objectSize :: (if (GBL.DSPTYPE == 62) {$a = (19)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 1) {$a = (22)} , if (GBL.DSPTYPE == 54 && GBL.FARMODE == 0) {$a = (19)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "LARGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "HUGE") {$a = (34)} , if (GBL.DSPTYPE == 55 && GBL.MEMORYMODEL == "SMALL") {$a = (22)} , if (GBL.DSPTYPE == 28) {$a = (34)} , $a)
- prop dataSize :: (DHL.objectSize * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))
- prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")})
- prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok")
- prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok")
- prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok")
- prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok")
- prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} )
- prop _globalAllocDesc :: "%8t .dhl: {}"
- prop _memSeg :: self.OBJMEMSEG
- prop _placement :: (0x7fffffff / 2)
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gChannelsAvailable :: 0
- global OBJMEMSEG :: IRAM {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop MemberType :: MEM
- prop MemberTest :: MEM.dataMember($1)
- prop Label :: "Object Memory"
- prop JSName :: "OBJMEMSEG"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) {
- prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Underlying HST Channel"
- prop JSName :: "hstChannel"
- prop MemberType :: HST
- prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0})
- prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"})
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
- inst iMode :: = self.iHSTChannel.mode {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Mode"
- prop JSName :: "mode"
- prop Visible :: 1
- prop Writable :: 0
- prop NoGen :: 0
- }
- inst iDevId :: = (self.iHSTChannel.iId) {
- prop NoGen :: 0
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iIsVirtual :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DHL_FXNS {
- prop NoGen :: 1
- }
-}
-
-type DPI {
- isa ObjectMgr
- prop name :: "DPI"
- prop Label :: "DPI - Pipe Driver"
- prop IsContainedIn :: SIODRIVER
- prop GlobalIcon :: 127
- prop InstanceIcon :: 128
- prop GlobalHelpTopic :: (304)
- prop InstanceHelpTopic :: (404)
- prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}")
- prop DependsOn :: "DEV"
- prop maxObjs :: (32767)
- prop isDriver :: (1)
- prop localCreate :: (self.gCurDevId += 1, "ok")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gCurDevId :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDevId :: DPI.gCurDevId {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop Writable :: 0
- prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically"))
- }
- inst iIsVirtual :: 0 {
- prop Label :: "Allow virtual instances of this device."
- prop JSName :: "allowVirtual"
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"})
- }
- inst iIsTerminal :: 1 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop NoGen :: 1
- }
- inst iFxns :: @_DPI_FXNS {
- prop NoGen :: 1
- }
-}
-
-type MSGQ {
- isa Module
- prop Visible :: 1
- prop name :: "MSGQ"
- prop Label :: "MSGQ - Message Queue Manager"
- prop IsConfMod :: self.USEMSGQ
- prop IsContainedIn :: IOF
- prop DependsOn :: "GIO,SIO"
- prop GlobalIcon :: 131
- prop InstanceIcon :: 132
- prop GlobalHelpTopic :: (323)
- prop InstanceHelpTopic :: (423)
- prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}")
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global USEMSGQ :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Enable MSGQ Manager"
- prop JSName :: "ENABLEMSGQ"
- prop Visible :: 1
- prop Writable :: 1
- prop NoGen :: 0
- }
-}
-
-type HOOK {
- isa ObjectMgr
- prop name :: "HOOK"
- prop Label :: "HOOK - Module Hook Manager"
- prop IsContainedIn :: SYSTEM
- prop DependsOn :: "SWI"
- prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}")
- prop GlobalIcon :: 181
- prop InstanceIcon :: 182
- prop GlobalHelpTopic :: (318)
- prop InstanceHelpTopic :: (418)
- prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok")
- prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok")
- prop maxObjs :: (32767)
- prop SortByField :: "iPri"
- prop SortGroups :: 1
- global gUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gSetOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gNumOf :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gDirty :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInitFlag :: 1 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- global KNLID :: = (HOOK_KNL.Order - 1) {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- }
- inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} {
- prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "comment"
- prop JSName :: "comment"
- prop Visible :: 1
- prop Writable :: if self.iDelUser == "USER" {1} else {0}
- prop NoGen :: 1
- }
- inst iIsUsed :: 0 {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iId :: 0 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Style :: 0x01
- prop Visible :: 0
- prop Writable :: 1
- prop NoGen :: 1
- }
- inst iDelUser :: "USER" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst iDelMsg :: "ok" {
- prop Visible :: 0
- prop Writable :: 0
- prop NoGen :: 1
- }
- inst initFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Initialization function"
- prop JSName :: "initFxn"
- prop Visible :: 1
- prop Writable :: 1
- }
- inst createFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Create function"
- prop JSName :: "createFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst deleteFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Delete function"
- prop JSName :: "deleteFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst exitFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Exit function"
- prop JSName :: "exitFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst callSwitchFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call switch function"
- prop JSName :: "callSwitchFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst switchFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Switch function"
- prop JSName :: "switchFxn"
- prop Visible :: 1
- prop Writable :: self.callSwitchFxn
- }
- inst callReadyFxn :: 0 {
- prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
- prop Label :: "Call ready function"
- prop JSName :: "callReadyFxn"
- prop Visible :: 1
- prop Writable :: self.iDelUser == "USER"
- }
- inst readyFxn :: @_FXN_F_nop {
- prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}"
- prop Label :: "Ready function"
- prop JSName :: "readyFxn"
- prop Visible :: 1
- prop Writable :: self.callReadyFxn
- }
- inst Order :: 2 {
- prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
- prop JSName :: "order"
- prop NoGen :: 1
- prop Writable :: 1
- }
- inst iPri :: 0 {
- prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}"
- prop Visible :: 0
- prop NoGen :: 1
- }
-}
-
-object HOOK_KNL :: HOOK {
- param iComment :: "Used to support TSK function hooks (cannot be deleted)"
- param iIsUsed :: 0
- param iId :: 0
- param iDelUser :: "HOOK"
- param iDelMsg :: "This hook instance is used by TSK and cannot be deleted"
- param initFxn :: @_FXN_F_nop
- param createFxn :: @_FXN_F_nop
- param deleteFxn :: @_FXN_F_nop
- param exitFxn :: @_FXN_F_nop
- param callSwitchFxn :: 0
- param switchFxn :: @_FXN_F_nop
- param callReadyFxn :: 0
- param readyFxn :: @_FXN_F_nop
- param Order :: 1
- param iPri :: 0
-}
-
-object SDRAM :: MEM {
- param iComment :: "This object defines 8MB for the DSP's off-chip memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: -2147483648
- param len :: 8388608
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
-object IRAM :: MEM {
- param iComment :: "Internal L2 memory"
- param iIsUsed :: 1
- param iId :: 0
- param iDelUser :: "USER"
- param iDelMsg :: "ok"
- param base :: 0
- param len :: 262144
- param iAllocHeap :: 0
- param iHeapSize :: 32768
- param iUserHeapId :: 0
- param iHeapId :: @segment_name
- param iReqHeapCount :: 0
- param space :: "code/data"
- param dynamicLoading :: 0
- param iIsModifiable :: 1
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/10b763de7406001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/10b763de7406001814daa3a49c232c18
deleted file mode 100644
index 165bccf..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/10b763de7406001814daa3a49c232c18
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double buffer[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- buffer[ptr] = (float) sample_in / 32767.f;
-
- sample_out = non_circ_fir();
-
- mono_write_16Bit(sample_out);
-// mono_write_16Bit(sample_in);
-}
-
-// Perform linear convolution
-short non_circ_fir()
-{
-
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
-
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/8087af3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/8087af3a45070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/8087af3a45070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/c0c314167506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/c0c314167506001814daa3a49c232c18
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/c0c314167506001814daa3a49c232c18
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/d03cdc3a45070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/d03cdc3a45070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fa/d03cdc3a45070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/6055b011d90100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/6055b011d90100181ce89bcacea45786
deleted file mode 100644
index eeb8bfe..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/6055b011d90100181ce89bcacea45786
+++ /dev/null
@@ -1,138 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 12
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- mono_write_16Bit((short)(wave_out*32767));
-
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
- for (i = N-1; i > 0; i--) {
- x[i] = x[i-1];
- }
- x[0] = sample_in;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/b06fd0c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/b06fd0c9e10100181ce89bcacea45786
deleted file mode 100644
index 7165b14..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fb/b06fd0c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,197 +0,0 @@
-;; Do *not* directly modify this file. It was
-;; generated by the Configuration Tool; any
-;; changes risk being overwritten.
-
-;; INPUT dsp_bios_.cdb
-
-;; CONFIGURATION/VERSION INFORMATION
- .asg "dsp_bios_.cdb", VERS$CDB
- .asg ";;;", VERS$CDBRELATIVEPATH
- .asg "dsp_bios_cfg", VERS$CFG
- .asg "@(#)*** xdcutils-e03", VERS$TREE
-
-;; EXTERNAL REFERENCES
- .global HWI_unused
- .global RESERVED
- .global _FXN_F_nop
- .global segment_name
- .global _CLK_start6x
- .global FXN_F_nop
- .global FXN_F_zero
- .global HWI_F_dispatch
- .global CLK_F_frete
- .global CLK_F_rete
- .global CLK_F_getltime
- .global CLK_F_isr
- .global CLK_A_TABBEG
- .global CLK_F_getfhtime
- .global CLK_F_getshtime
- .global PRD_F_tick
- .global PRD_F_swi
- .global _KNL_tick
- .global LNK_F_dataPump
- .global RTA_F_dispatch
- .global _HSRTDX_xmt
- .global _HSRTDX_rec
- .global _RTDX_Poll
- .global GBL_stackbeg
- .global _c_int00
- .global SWI_F_exec
- .global SWI_F_run
- .global GBL_NULL
- .global __HOOK_doCreate
- .global __HOOK_doDelete
- .global __HOOK_doExit
- .global __HOOK_doSwitch
- .global __HOOK_doReady
- .global null
- .global _IDL_loop
- .global IDL_F_loop
- .global _KNL_run
- .global IDL_F_stub
- .global IDL_F_calibrate
- .global IDL_F_busy
- .global _UTL_doPutc
- .global _UTL_doAbort
- .global _UTL_doError
- .global _UTL_halt
- .global _SEM_create
- .global _SEM_delete
- .global _SEM_pend
- .global _SEM_post
- .global _DIO_cbStaticFxns
- .global _DIO_tskStaticFxns
- .global _DIO_cbDynamicFxns
- .global _DIO_tskDynamicFxns
- .global _DIO_init
- .global _DGN_printFloat
- .global _DGN_printHex
- .global _DGN_printInt
- .global DGN_CONST
- .global DGN_RAND
- .global DGN_SINE
- .global DGN_USER
- .global _DGN_FXNS
- .global _DHL_notify
- .global _DHL_FXNS
- .global _DPI_FXNS
- .global _GBL_setPLLto225MHz
- .global _ISR_AIC
-
-;; MODULE PARAMETERS
-GBL$ .set 1
-GBL_ROM .set 00H
-GBL_PROCID .set 00H
-GBL_CLKIN .set 04e20H
-GBL_FREQ .set 036ee8H
-GBL_DSPTYPE .set 03eH
-GBL_DSPSUBTYPE .set 01a39H
-GBL_CLKTYPE .set 01770H
-GBL_BIGENDIAN .set 00H
-GBL_USERINIT .set 01H
-GBL_ENABLEINST .set 01H
-GBL_CACHE .set 00H
-GBL_L2CONFIGURE .set 01H
-GBL_L2MODE .set 00H
-GBL_L2PRIORITY .set 00H
-GBL_L2MARMASK .set 01H
-GBL_SUPPORTCSL .set 00H
-GBL_TRCMASKVALUE .set 0dbefH
-GBL_CALLCSLCFGINIT .set 01H
-GBL_C641XL2PRIORITY .set 00H
-GBL_L2MARMASK1 .set 00H
-GBL_L2MARMASK2 .set 00H
-GBL_L2MARMASK3 .set 00H
-GBL_L2MARMASK4 .set 00H
-GBL_L2MARMASK5 .set 00H
-GBL_L2CONFIGALLOC .set 00H
-GBL_L2ALLOC .set 02226H
-MEM$ .set 1
-MEM_gNumHeap .set 00H
-MEM_USEMPC .set 00H
-OBJ$ .set 0
-BUF$ .set 0
-BUF_ENABLED .set 01H
-POOL$ .set 0
-POOL_USEPOOL .set 00H
-CLK$ .set 1
-CLK_INTBIT .set 04000H
-CLK_REGS .set 01940000H
-CLK_TIMERNUM .set 00H
-CLK_USETIMER .set 01H
-CLK_MICROSECS .set 03e8H
-CLK_TCR .set 020H
-CLK_TDDR .set 00H
-CLK_TDDRHIGH .set 00H
-CLK_PRD .set 0dbbaH
-CLK_PRDHIGH .set 00H
-CLK_COUNTSPMS .set 0dbbaH
-CLK_COUNTSPMSHIGH .set 00H
-CLK_CALDIV .set 01H
-CLK_CALMULT .set 04H
-CLK_HTIMEDIV .set 01H
-CLK_HTIMEMULT .set 04H
-CLK_LTIMEDIV .set 01H
-CLK_LTIMEMULT .set 036ee8H
-CLK_HTIMEPERLTIME .set 0dbbaH
-PRD$ .set 1
-PRD_SCALAR .set 04000H
-RTDX$ .set 1
-RTDX_USERTDX .set 01H
-RTDX_USERTEXECUTION .set 00H
- .asg "JTAG", RTDX_RTDXTYPE
-RTDX_BUFMEMSIZE .set 0408H
-HST$ .set 1
-HST_RTDX .set 01H
-HST_DSM .set 00H
-HST_NONE .set 00H
-HST_MAXFRAMESET .set 040H
-HST_MAXFRAMEALLOWED .set 0ffH
-HST_DSMMEMSIZE .set 0400H
-HWI$ .set 1
-HWI_ZEROTAB .set 01H
-HWI_GENERATE_RESET_VEC .set 00H
-HWI_POLARITYMASK .set 00H
-HWI_INTRMULTLOW .set 0310718afH
-HWI_INTRMULTHIGH .set 082039a3H
-HWI_CFGDISPATCHED .set 04018H
-SWI$ .set 1
-TSK$ .set 1
-TSK_STACKSIZE .set 0400H
-TSK_PRIORITY .set 01H
-TSK_SWITCHFXN .set 00H
-TSK_READYFXN .set 00H
-TSK_NUM_HOOKS .set 00H
-IDL$ .set 1
-IDL_USECLKIDLTIME .set 01H
-IDL_CALIBRERROR .set 06H
-ISRC$ .set 1
-LOG$ .set 1
-LOG_ENABLED .set 01H
-PIP$ .set 0
-PIP_gNumEmbed .set 02H
-PIP_gNextId .set 00H
-PIP_OBJSIZE .set 064H
-SEM$ .set 0
-MBX$ .set 0
-QUE$ .set 1
-LCK$ .set 1
-STS$ .set 1
-SYS$ .set 1
-SIO$ .set 0
-GIO$ .set 0
-DEV$ .set 0
-UDEV$ .set 0
-DIO$ .set 0
-DIO_STATIC .set 00H
-DIO_NUMTSKBASE .set 00H
-DIO_NUMSWIBASE .set 00H
-DGN$ .set 0
-DHL$ .set 0
-DHL_gChannelsAvailable .set 00H
-DPI$ .set 0
-MSGQ$ .set 0
-MSGQ_USEMSGQ .set 00H
-HOOK$ .set 0
-HOOK_KNLID .set 00H
-DEV$NUMDEVICES .set 0
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/90e00425610b001815de8ca47440e6f8 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/90e00425610b001815de8ca47440e6f8
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/90e00425610b001815de8ca47440e6f8
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/f008e37a44070018153483e962c7925e b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/f008e37a44070018153483e962c7925e
deleted file mode 100644
index 17ad43b..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fc/f008e37a44070018153483e962c7925e
+++ /dev/null
@@ -1,129 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-SHELL = cmd.exe
-
-EMPTY :=
-SPACE := $(EMPTY) $(EMPTY)
-
-ORDERED_OBJS += \
-$(GEN_CMDS_QUOTED) \
-"./intio.obj" \
-"./dsp_bios_cfg_c.obj" \
-"./dsp_bios_cfg.obj" \
--l"rts6700.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" \
--l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \
-
--include ../makefile.init
-
-RM := DEL /F
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(S62_DEPS)),)
--include $(S62_DEPS)
-endif
-ifneq ($(strip $(ASM_DEPS)),)
--include $(ASM_DEPS)
-endif
-ifneq ($(strip $(C55_DEPS)),)
--include $(C55_DEPS)
-endif
-ifneq ($(strip $(S_UPPER_DEPS)),)
--include $(S_UPPER_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(S_DEPS)),)
--include $(S_DEPS)
-endif
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C64_DEPS)),)
--include $(C64_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(S64_DEPS)),)
--include $(S64_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(C67_DEPS)),)
--include $(C67_DEPS)
-endif
-ifneq ($(strip $(S67_DEPS)),)
--include $(S67_DEPS)
-endif
-ifneq ($(strip $(S43_DEPS)),)
--include $(S43_DEPS)
-endif
-ifneq ($(strip $(C62_DEPS)),)
--include $(C62_DEPS)
-endif
-ifneq ($(strip $(C43_DEPS)),)
--include $(C43_DEPS)
-endif
-ifneq ($(strip $(C??_DEPS)),)
--include $(C??_DEPS)
-endif
-ifneq ($(strip $(ASM_UPPER_DEPS)),)
--include $(ASM_UPPER_DEPS)
-endif
-ifneq ($(strip $(OPT_DEPS)),)
--include $(OPT_DEPS)
-endif
-ifneq ($(strip $(S??_DEPS)),)
--include $(S??_DEPS)
-endif
-ifneq ($(strip $(S55_DEPS)),)
--include $(S55_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-ifneq ($(strip $(SA_DEPS)),)
--include $(SA_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables
-
-# All Target
-all: RTDSP.out
-
-# Tool invocations
-RTDSP.out: $(GEN_CMDS) $(OBJS)
- @echo 'Building target: $@'
- @echo 'Invoking: Linker'
- "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --define=_DEBUG --define=CHIP_6713 --diag_warning=225 -z -m"RTDSP.map" --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/EEE/CCStudio4.1/bios_5_41_02_14/packages/ti/bios/lib" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS)
- @echo 'Finished building target: $@'
- @echo ' '
-
-# Other Targets
-clean:
- -$(RM) $(GEN_CMDS__QTD)$(GEN_SRCS__QTD)$(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out"
- -$(RM) ".\dsp_bios_cfg.obj" ".\dsp_bios_cfg_c.obj" ".\intio.obj"
- -$(RM) ".\dsp_bios_cfg.pp"
- -$(RM) ".\dsp_bios_cfg_c.pp" ".\intio.pp"
- -@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30b6a5c9e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30b6a5c9e10100181ce89bcacea45786
deleted file mode 100644
index b8c0e62..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/30b6a5c9e10100181ce89bcacea45786
+++ /dev/null
@@ -1,7 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib"
-
-USER_OBJS := \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/8033b0cc7506001814daa3a49c232c18 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/8033b0cc7506001814daa3a49c232c18
deleted file mode 100644
index 616731f..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/8033b0cc7506001814daa3a49c232c18
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Do *not* directly modify this file. It was */
-/* generated by the Configuration Tool; any */
-/* changes risk being overwritten. */
-
-/* INPUT dsp_bios_.cdb */
-
-/* Include Header Files */
-#include <std.h>
-#include <hst.h>
-#include <swi.h>
-#include <tsk.h>
-#include <log.h>
-#include <sts.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern far HST_Obj RTA_fromHost;
-extern far HST_Obj RTA_toHost;
-extern far SWI_Obj KNL_swi;
-extern far TSK_Obj TSK_idle;
-extern far LOG_Obj LOG_system;
-extern far STS_Obj IDL_busyObj;
-
-
-#ifdef __cplusplus
-}
-#endif /* extern "C" */
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/804514afe50100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/804514afe50100181ce89bcacea45786
deleted file mode 100644
index e69de29..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fd/804514afe50100181ce89bcacea45786
+++ /dev/null
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/108efa2ddf0100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/108efa2ddf0100181ce89bcacea45786
deleted file mode 100644
index ca846e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/108efa2ddf0100181ce89bcacea45786
+++ /dev/null
@@ -1 +0,0 @@
--l"./dsp_bios_cfg.cmd" "./intio.obj" "./dsp_bios_cfg_c.obj" "./dsp_bios_cfg.obj" -l"rts6700.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\csl\lib\csl6713.lib" -l"C:/EEE/CCStudio4.1/ccsv4\C6000\dsk6713\lib\dsk6713bslccsv4.lib" \ No newline at end of file
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/70bea0c7e10100181ce89bcacea45786 b/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/70bea0c7e10100181ce89bcacea45786
deleted file mode 100644
index ff39b72..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.history/fe/70bea0c7e10100181ce89bcacea45786
+++ /dev/null
@@ -1,164 +0,0 @@
-/*************************************************************************************
- DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
- IMPERIAL COLLEGE LONDON
-
- EE 3.19: Real Time Digital Signal Processing
- Dr Paul Mitcheson and Daniel Harvey
-
- LAB 3: Interrupt I/O
-
- ********* I N T I O. C **********
-
- Demonstrates inputing and outputing data from the DSK's audio port using interrupts.
-
- *************************************************************************************
- Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006
- Updated for CCS V4 Sept 10
- ************************************************************************************/
-/*
- * You should modify the code so that interrupts are used to service the
- * audio port.
- */
-/**************************** Pre-processor statements ******************************/
-
-#include <stdlib.h>
-// Included so program can make use of DSP/BIOS configuration tool.
-#include "dsp_bios_cfg.h"
-
-/* The file dsk6713.h must be included in every program that uses the BSL. This
- example also includes dsk6713_aic23.h because it uses the
- AIC23 codec module (audio interface). */
-#include "dsk6713.h"
-#include "dsk6713_aic23.h"
-
-// math library (trig functions)
-#include <math.h>
-
-// Some functions to help with writing/reading the audio ports when using interrupts.
-#include <helper_functions_ISR.h>
-#include "Matlab/filter_coeff.txt"
-// Some functions to help with configuring hardware
-#include "helper_functions_polling.h"
-
-
-// PI defined here for use in your code
-#define PI 3.141592653589793
-#define N 249
-double x[N];
-
-/******************************* Global declarations ********************************/
-
-/* Audio port configuration settings: these values set registers in the AIC23 audio
- interface to configure it. See TI doc SLWS106D 3-3 to 3-10 for more info. */
-DSK6713_AIC23_Config Config = { \
- /**********************************************************************/
- /* REGISTER FUNCTION SETTINGS */
- /**********************************************************************/\
- 0x0017, /* 0 LEFTINVOL Left line input channel volume 0dB */\
- 0x0017, /* 1 RIGHTINVOL Right line input channel volume 0dB */\
- 0x01f9, /* 2 LEFTHPVOL Left channel headphone volume 0dB */\
- 0x01f9, /* 3 RIGHTHPVOL Right channel headphone volume 0dB */\
- 0x0011, /* 4 ANAPATH Analog audio path control DAC on, Mic boost 20dB*/\
- 0x0000, /* 5 DIGPATH Digital audio path control All Filters off */\
- 0x0000, /* 6 DPOWERDOWN Power down control All Hardware on */\
- 0x0043, /* 7 DIGIF Digital audio interface format 16 bit */\
- 0x008d, /* 8 SAMPLERATE Sample rate control 8 KHZ */\
- 0x0001 /* 9 DIGACT Digital interface activation On */\
- /**********************************************************************/
-};
-
-
-// Codec handle:- a variable used to identify audio interface
-DSK6713_AIC23_CodecHandle H_Codec;
-
- /******************************* Function prototypes ********************************/
-void init_hardware(void);
-void init_HWI(void);
-void ISR_AIC(void);
-short non_circ_fir(void);
-/********************************** Main routine ************************************/
-void main(){
- // initialize board and the audio port
- init_hardware();
-
- /* initialize hardware interrupts */
- init_HWI();
-
- /* loop indefinitely, waiting for interrupts */
- while(1) {};
-}
-
-/********************************** init_hardware() **********************************/
-void init_hardware()
-{
- // Initialize the board support library, must be called first
- DSK6713_init();
-
- // Start the AIC23 codec using the settings defined above in config
- H_Codec = DSK6713_AIC23_openCodec(0, &Config);
-
- /* Function below sets the number of bits in word used by MSBSP (serial port) for
- receives from AIC23 (audio port). We are using a 32 bit packet containing two
- 16 bit numbers hence 32BIT is set for receive */
- MCBSP_FSETS(RCR1, RWDLEN1, 32BIT);
-
- /* Configures interrupt to activate on each consecutive available 32 bits
- from Audio port hence an interrupt is generated for each L & R sample pair */
- MCBSP_FSETS(SPCR1, RINTM, FRM);
-
- /* These commands do the same thing as above but applied to data transfers to
- the audio port */
- MCBSP_FSETS(XCR1, XWDLEN1, 32BIT);
- MCBSP_FSETS(SPCR1, XINTM, FRM);
-}
-
-/********************************** init_HWI() **************************************/
-void init_HWI()
-{
- IRQ_globalDisable(); // Globally disables interrupts
- IRQ_nmiEnable(); // Enables the NMI interrupt (used by the debugger)
- IRQ_map(IRQ_EVT_RINT1,4); // Maps an event to a physical interrupt
- IRQ_enable(IRQ_EVT_RINT1); // Enables the event
- IRQ_globalEnable(); // Globally enables interrupts
-}
-
-/******************** INTERRUPT SERVICE ROUTINE ***********************/
-void ISR_AIC()
-{
- unsigned int i;
- short sample_in, sample_out;
-
- sample_in = mono_read_16Bit();
-
-// for (i = N-1; i > 0; i--) {
-// x[i] = x[i-1];
-// }
-// x[0] = (float) sample_in / 32767.f;
-//
-// sample_out = non_circ_fir();
-//
-// mono_write_16Bit(sample_out);
- mono_write_16Bit(sample_in);
-}
-
-//Convolve the
-short non_circ_fir()
-{
-/* double y[N + M - 1];
- int i, M, j;
- M = sizeof(b)/sizeof(b[0]);
-
- for (i = 0; i < N + M - 1; i++) {
- for (j = 0; j < i -1; j++) {
- y[i] = y[i] + b[j]*h[i-j-1];
- }
-
- }*/
- double y = 0;
- int M, i;
- M = sizeof(b) / sizeof(b[0]);
- for(i = 0; i < N; i++) {
- y += x[i] * b[M-i-1];
- }
- return y*32767;
-}
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/33/history.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/33/history.index
deleted file mode 100644
index c8e7e23..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/33/history.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/9d/1f/46/1f/history.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/9d/1f/46/1f/history.index
deleted file mode 100644
index 40e7c96..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/9d/1f/46/1f/history.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/af/history.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/af/history.index
deleted file mode 100644
index 60b6598..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/af/history.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/b3/history.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/b3/history.index
deleted file mode 100644
index 61d9e7a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/b3/history.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/cf/history.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/cf/history.index
deleted file mode 100644
index 9f3982c..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/cf/history.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/history.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/history.index
deleted file mode 100644
index 4f83b6e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/history.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/properties.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/properties.index
deleted file mode 100644
index da7bcbb..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.indexes/properties.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.markers.snap b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.markers.snap
deleted file mode 100644
index c7d9f4e..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.markers.snap
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.syncinfo.snap b/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.syncinfo.snap
deleted file mode 100644
index 1f3a618..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.projects/RTDSP/.syncinfo.snap
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index
deleted file mode 100644
index ff944e6..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap b/lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap
deleted file mode 100644
index 1f3a618..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/lab4/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
deleted file mode 100644
index 26fb0ba..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.resources/.snap b/lab4/.metadata/.plugins/org.eclipse.core.resources/.snap
deleted file mode 100644
index c74600d..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.resources/.snap
+++ /dev/null
Binary files differ
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs b/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs
deleted file mode 100644
index 5cce6d1..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Thu Jan 25 12:44:08 GMT 2018
-org.eclipse.cdt.debug.core.cDebug.common_source_containers=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<sourceLookupDirector>\r\n<sourceContainers duplicates\="false"/>\r\n</sourceLookupDirector>\r\n
-eclipse.preferences.version=1
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.managedbuilder.core.prefs
deleted file mode 100644
index ddab5a1..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.managedbuilder.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-#Thu Feb 01 11:43:49 GMT 2018
-properties/RTDSP.com.ti.ccstudio.buildDefinitions.C6000.ProjectType.161682043/com.ti.ccstudio.buildDefinitions.C6000.Debug.1896488960=\#\r\n\#Thu Feb 01 11\:43\:49 GMT 2018\r\ncom.ti.ccstudio.buildDefinitions.C6000_6.1.exe.DebugToolchain.685974834\=\\\#\\r\\n\\\#Thu Feb 01 11\\\:43\\\:49 GMT 2018\\r\\nrebuildState\\\=false\\r\\n\r\ncom.ti.rtsc.buildDefinitions.DSPBIOS_5.40.tool.956567681\=\\\#\\r\\n\\\#Thu Feb 01 11\\\:43\\\:49 GMT 2018\\r\\nrebuildState\\\=false\\r\\n\r\ncom.ti.ccstudio.buildDefinitions.C6000_6.1.exe.compilerDebug.59064415\=\\\#\\r\\n\\\#Thu Feb 01 11\\\:43\\\:49 GMT 2018\\r\\nrebuildState\\\=false\\r\\n\r\ncom.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerDebug.1545787422\=\\\#\\r\\n\\\#Thu Feb 01 11\\\:43\\\:49 GMT 2018\\r\\nrebuildState\\\=false\\r\\n\r\ncom.ti.ccstudio.buildDefinitions.C6000.Debug.1896488960\=\\\#\\r\\n\\\#Thu Feb 01 11\\\:43\\\:49 GMT 2018\\r\\nrebuildState\\\=false\\r\\n\r\n
-eclipse.preferences.version=1
-properties/RTDSP.com.ti.ccstudio.buildDefinitions.C6000.ProjectType.161682043/com.ti.ccstudio.buildDefinitions.C6000.Release.1767910452=\#\r\n\#Thu Feb 01 11\:43\:49 GMT 2018\r\ncom.ti.ccstudio.buildDefinitions.C6000.Release.1767910452\=\\\#\\r\\n\\\#Thu Feb 01 11\\\:43\\\:49 GMT 2018\\r\\nrcState\\\=-1\\r\\n\r\n
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index f1ff264..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,9 +0,0 @@
-#Thu Jan 25 12:44:26 GMT 2018
-pathvariable.CCS_C6000_6_1_15_CG_ROOT=C\:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000
-version=1
-pathvariable.CCS_MSP430_3_3_0_CG_ROOT=C\:/EEE/CCStudio4.1/ccsv4/tools/compiler/msp430
-pathvariable.CCS_C5400_4_2_0_CG_ROOT=C\:/EEE/CCStudio4.1/ccsv4/tools/compiler/c5400
-pathvariable.CCS_TMS470_4_6_3_CG_ROOT=C\:/EEE/CCStudio4.1/ccsv4/tools/compiler/tms470
-eclipse.preferences.version=1
-pathvariable.CCS_C2000_5_2_6_CG_ROOT=C\:/EEE/CCStudio4.1/ccsv4/tools/compiler/c2000
-pathvariable.CCS_C5500_4_3_6_CG_ROOT=C\:/EEE/CCStudio4.1/ccsv4/tools/compiler/c5500
diff --git a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
deleted file mode 100644
index c423f91..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Thu Jan 25 12:44:08 GMT 2018
-eclipse.preferences.version=1
-showIntro=false
diff --git a/lab4/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml b/lab4/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
deleted file mode 100644
index 81addb7..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<launchHistory>
-<launch memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;launchConfiguration local=&quot;false&quot; path=&quot;/RTDSP/.launches/RTDSP.launch&quot;/&gt;&#13;&#10;" mode="debug"/>
-<lastLaunch memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;launchConfiguration local=&quot;false&quot; path=&quot;/RTDSP/.launches/RTDSP.launch&quot;/&gt;&#13;&#10;" mode="debug"/>
-</launchHistory>
diff --git a/lab4/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml b/lab4/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml
deleted file mode 100644
index aef131a..0000000
--- a/lab4/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml
+++ /dev/null
@@ -1,518 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<workbench progressCount="64" version="2.0">
-<workbenchAdvisor/>
-<window height="869" maximized="true" width="1929" x="-3" y="0">
-<fastViewData fastViewLocation="1024">
-<orientation position="512" view="org.eclipse.cdt.ui.CView"/>
-<orientation position="512" view="com.ti.ccstudio.system.setup.ui.views.TargetConfigurationView"/>
-</fastViewData>
-<perspectiveBar>
-<itemSize x="160"/>
-</perspectiveBar>
-<coolbarLayout locked="0">
-<coolItem id="group.file" itemType="typeGroupMarker"/>
-<coolItem id="org.eclipse.ui.workbench.file" itemType="typeToolBarContribution" x="115" y="22"/>
-<coolItem id="additions" itemType="typeGroupMarker"/>
-<coolItem id="com.ti.ccstudio.debug.ui.DebugActionSet" itemType="typeToolBarContribution" x="107" y="22"/>
-<coolItem id="com.ti.ccstudio.debug.ui.RealTimeActionSet" itemType="typeToolBarContribution" x="61" y="22"/>
-<coolItem id="com.ti.ccstudio.debug.ui.actionSet_Launch" itemType="typeToolBarContribution" x="53" y="22"/>
-<coolItem id="com.ti.ccstudio.profile.setup.actionSet" itemType="typeToolBarContribution" x="53" y="22"/>
-<coolItem id="find.ext" itemType="typeToolBarContribution" x="38" y="22"/>
-<coolItem id="org.eclipse.search.searchActionSet" itemType="typeToolBarContribution" x="38" y="22"/>
-<coolItem id="group.nav" itemType="typeGroupMarker"/>
-<coolItem id="org.eclipse.ui.workbench.navigate" itemType="typeToolBarContribution" x="190" y="22"/>
-<coolItem id="group.editor" itemType="typeGroupMarker"/>
-<coolItem id="org.eclipse.cdt.ui.editor.asm.AsmEditor" itemType="typeToolBarContribution" x="-1" y="-1"/>
-<coolItem id="org.eclipse.ui.DefaultTextEditor" itemType="typePlaceholder" x="-1" y="-1"/>
-<coolItem id="org.eclipse.cdt.ui.editor.CEditor" itemType="typeToolBarContribution" x="-1" y="-1"/>
-<coolItem id="group.help" itemType="typeGroupMarker"/>
-<coolItem id="org.eclipse.ui.workbench.help" itemType="typeToolBarContribution" x="-1" y="-1"/>
-</coolbarLayout>
-<page focus="true" label="Workspace - Debug">
-<editors>
-<editorArea activeWorkbook="DefaultEditorWorkbook">
-<info part="DefaultEditorWorkbook">
-<folder appearance="1" expanded="2">
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
-<part id="0"/>
-<part id="1"/>
-</presentation>
-</folder>
-</info>
-</editorArea>
-<editor activePart="true" focus="true" id="org.eclipse.cdt.ui.editor.CEditor" name="intio.c" partName="intio.c" path="C:/GIT/RTDSP/lab4/RTDSP/intio.c" title="intio.c" tooltip="RTDSP/intio.c" workbook="DefaultEditorWorkbook">
-<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/RTDSP/intio.c"/>
-</editor>
-<editor id="org.eclipse.cdt.ui.editor.asm.AsmEditor" name="dsp_bios_cfg.s62" partName="dsp_bios_cfg.s62" path="C:/GIT/RTDSP/lab4/RTDSP/Debug/dsp_bios_cfg.s62" title="dsp_bios_cfg.s62" tooltip="RTDSP/Debug/dsp_bios_cfg.s62" workbook="DefaultEditorWorkbook">
-<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/RTDSP/Debug/dsp_bios_cfg.s62"/>
-</editor>
-</editors>
-<views>
-<view id="com.ti.ccstudio.debug.registers.ui.Expressions" partName="Watch (1)">
-<viewState StatesFile="C:/GIT/RTDSP/lab4/.metadata/.plugins/com.ti.ccstudio.debug.registers.ui/expressions.xml" columnName.0="Name" columnName.1="Value" columnName.2="Address" columnName.3="Type" columnName.4="Format" columnWidth.0="150" columnWidth.1="150" columnWidth.2="150" columnWidth.3="150" columnWidth.4="80" numberOfVisibleColumns="5"/>
-</view>
-<view id="org.eclipse.ui.console.ConsoleView" partName="Console">
-<viewState/>
-</view>
-<view id="org.eclipse.ui.views.ContentOutline" partName="Outline">
-<viewState/>
-</view>
-<view id="org.eclipse.cdt.ui.CView" partName="C/C++ Projects">
-<viewState horizontalPosition="0" verticalPosition="4">
-<expanded>
-<element path="C:\GIT\RTDSP\lab4\RTDSP"/>
-<element path="C:\GIT\RTDSP\lab4\RTDSP\Matlab"/>
-</expanded>
-<customFilters userDefinedPatternsEnabled="false">
-<xmlDefinedFilters>
-<child filterId="org.eclipse.cdt.internal.ui.CView.ArchiveFilter" isEnabled="false"/>
-<child filterId="org.eclipse.cdt.ui.CView_patternFilterId_.*" isEnabled="true"/>
-<child filterId="org.eclipse.cdt.internal.ui.CView.NonCElementFilter" isEnabled="false"/>
-<child filterId="org.eclipse.cdt.internal.ui.CView.ExecutableFilter" isEnabled="false"/>
-<child filterId="org.eclipse.cdt.internal.ui.CView.SharedFilter" isEnabled="false"/>
-<child filterId="org.eclipse.cdt.internal.ui.CView.ObjectFilter" isEnabled="false"/>
-<child filterId="org.eclipse.cdt.internal.ui.CView.NonCProjectsFilter" isEnabled="false"/>
-<child filterId="org.eclipse.cdt.internal.ui.CView.ClosedProjectFilter" isEnabled="false"/>
-</xmlDefinedFilters>
-</customFilters>
-</viewState>
-</view>
-<view id="com.ti.ccstudio.system.setup.ui.views.TargetConfigurationView" partName="Target Configurations">
-<viewState/>
-</view>
-<view id="org.eclipse.debug.ui.DebugView" partName="Debug">
-<viewState/>
-</view>
-<view id="com.ti.ccstudio.debug.registers.ui.Variables" partName="Local (1)">
-<viewState columnName.0="Name" columnName.1="Value" columnName.2="Address" columnName.3="Type" columnName.4="Format" columnWidth.0="150" columnWidth.1="150" columnWidth.2="150" columnWidth.3="150" columnWidth.4="80" numberOfVisibleColumns="5"/>
-</view>
-<view id="com.ti.ccstudio.debug.ui.TIDisassemblyView" partName="Disassembly">
-<viewState/>
-</view>
-<view id="org.eclipse.ui.views.ProblemView" partName="Problems">
-<viewState columnWidth0="256" columnWidth1="81" columnWidth2="156" columnWidth3="66" columnWidth4="0" horizontalPosition="0" verticalPosition="0">
-<columnOrder columnOrderIndex="0"/>
-<columnOrder columnOrderIndex="1"/>
-<columnOrder columnOrderIndex="2"/>
-<columnOrder columnOrderIndex="3"/>
-<columnOrder columnOrderIndex="4"/>
-</viewState>
-</view>
-</views>
-<perspectives activePart="org.eclipse.cdt.ui.editor.CEditor" activePerspective="org.eclipse.debug.ui.DebugPerspective">
-<perspective editorAreaVisible="1" fixed="0" version="0.016">
-<descriptor class="org.eclipse.cdt.internal.ui.CPerspectiveFactory" id="org.eclipse.cdt.ui.CPerspective" label="C/C++"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.licensing"/>
-<alwaysOnActionSet id="com.ti.ccstudio.pinport.common.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.profile.setup.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.project.ui.actionSet_Project_Build"/>
-<alwaysOnActionSet id="com.ti.ccstudio.system.GELmenu.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.DebugActionSet.TargetConfiguration"/>
-<alwaysOnActionSet id="com.ti.ccstudio.trace.control.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.ui.mediaWiki"/>
-<alwaysOnActionSet id="com.ti.ccstudio.useaccess.viewsMenuSet"/>
-<alwaysOnActionSet id="com.ti.dvt.graph.visualization.graph"/>
-<alwaysOnActionSet id="com.ti.dvt.profiler.actionSet"/>
-<alwaysOnActionSet id="com.ti.dvt.rovsupport"/>
-<alwaysOnActionSet id="com.ti.dvt.rta.actionSet"/>
-<alwaysOnActionSet id="com.ti.dvt.trace.actions.TraceAction"/>
-<alwaysOnActionSet id="com.ti.dvt.via.plugin.ActionSet"/>
-<alwaysOnActionSet id="org.eclipse.cdt.ui.CodingActionSet"/>
-<alwaysOnActionSet id="org.eclipse.search.searchActionSet"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.openExternalFile"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.navigation"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo"/>
-<alwaysOnActionSet id="org.eclipse.ui.actionSet.keyBindings"/>
-<alwaysOnActionSet id="org.eclipse.update.ui.softwareUpdates"/>
-<alwaysOnActionSet id="org.eclipse.rtsc.xdaistools.ui.actionSet"/>
-<alwaysOnActionSet id="org.eclipse.rtsc.xdctools.ui.actionSet"/>
-<alwaysOnActionSet id="org.eclipse.cdt.ui.SearchActionSet"/>
-<alwaysOnActionSet id="org.eclipse.ui.NavigateActionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.actionSet_Launch"/>
-<alwaysOnActionSet id="com.ti.ccstudio.ui.actionSet_managedBuild"/>
-<alwaysOnActionSet id="com.ti.ccstudio.project.ui.actionSet_Project"/>
-<alwaysOnActionSet id="org.eclipse.cdt.managedbuilder.ui.buildConfigActionSet"/>
-<alwaysOnActionSet id="org.eclipse.debug.ui.launchActionSet"/>
-<show_view_action id="org.eclipse.ui.console.ConsoleView"/>
-<show_view_action id="org.eclipse.search.ui.views.SearchView"/>
-<show_view_action id="org.eclipse.ui.views.ContentOutline"/>
-<show_view_action id="org.eclipse.ui.views.ProblemView"/>
-<show_view_action id="org.eclipse.cdt.ui.CView"/>
-<show_view_action id="org.eclipse.ui.views.ResourceNavigator"/>
-<show_view_action id="org.eclipse.ui.views.PropertySheet"/>
-<show_view_action id="com.ti.ccstudio.scripting.console.ConsoleView"/>
-<show_view_action id="com.ti.ccstudio.system.setup.ui.views.TargetConfigurationView"/>
-<new_wizard_action id="com.ti.ccstudio.managedbuild.ui.wizards.project.NewProjectWizard"/>
-<new_wizard_action id="org.eclipse.cdt.make.ui.wizards.NewMakeCCProjectWizard"/>
-<new_wizard_action id="com.ti.ccstudio.managedbuild.ui.wizards.project.NewRTSCConfigurationProjectWizard"/>
-<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewFolderCreationWizard"/>
-<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewSourceFileCreationWizard"/>
-<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewHeaderFileCreationWizard"/>
-<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewFileCreationWizard"/>
-<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewClassCreationWizard"/>
-<new_wizard_action id="com.ti.ccstudio.system.setup.editor.wizards.SystemSetupNewWizard"/>
-<new_wizard_action id="org.eclipse.rtsc.xdctools.buildDefinitions.DSPBIOS_5_31.tools.DSPBIOSCreateNew"/>
-<new_wizard_action id="org.eclipse.rtsc.xdctools.RTSCConfigFileWizard"/>
-<perspective_action id="org.eclipse.debug.ui.DebugPerspective"/>
-<perspective_action id="org.eclipse.team.ui.TeamSynchronizingPerspective"/>
-<perspective_action id="org.eclipse.cdt.ui.CPerspective"/>
-<view id="org.eclipse.cdt.ui.CView"/>
-<view id="org.eclipse.ui.views.ContentOutline"/>
-<view id="org.eclipse.ui.console.ConsoleView"/>
-<view id="org.eclipse.ui.views.ProblemView"/>
-<layout>&#x0A;<mainWindow>&#x0A;<info folder="true" part="topLeft">&#x0A;<folder activePageID="org.eclipse.cdt.ui.CView" appearance="2" expanded="2">&#x0A;<page content="org.eclipse.cdt.ui.CView" label="C/C++ Projects"/>
-<page content="org.eclipse.ui.views.BookmarkView" label="LabelNotFound"/>
-<page content="com.ti.ccstudio.system.setup.ui.views.TargetConfigurationView" label="LabelNotFound"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">&#x0A;<part id="0"/>
-</presentation>
-</folder>
-</info>
-<info folder="true" part="org.eclipse.ui.internal.ViewStack@e62121" ratio="0.749499" ratioLeft="748" ratioRight="250" relationship="2" relative="topLeft">&#x0A;<folder appearance="2" expanded="2">&#x0A;<page content="org.eclipse.help.ui.HelpView" label="LabelNotFound"/>
-<page content="org.eclipse.ui.internal.introview" label="LabelNotFound"/>
-<page content="org.eclipse.ui.cheatsheets.views.CheatSheetView" label="LabelNotFound"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory"/>
-</folder>
-</info>
-<info part="org.eclipse.ui.editorss" ratio="0.249499" ratioLeft="249" ratioRight="749" relationship="2" relative="topLeft"/>
-<info folder="true" part="topRight" ratio="0.74899864" ratioLeft="561" ratioRight="188" relationship="2" relative="org.eclipse.ui.editorss">&#x0A;<folder activePageID="org.eclipse.ui.views.ContentOutline" appearance="2" expanded="2">&#x0A;<page content="org.eclipse.ui.views.ContentOutline" label="Outline"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">&#x0A;<part id="0"/>
-</presentation>
-</folder>
-</info>
-<info folder="true" part="org.eclipse.ui.internal.ViewStack@3eaf1f" ratio="0.6997167" ratioLeft="494" ratioRight="212" relationship="4" relative="org.eclipse.ui.editorss">&#x0A;<folder activePageID="org.eclipse.ui.console.ConsoleView" appearance="2" expanded="2">&#x0A;<page content="org.eclipse.ui.console.ConsoleView" label="Console"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">&#x0A;<part id="0"/>
-</presentation>
-</folder>
-</info>
-<info folder="true" part="org.eclipse.ui.internal.ViewStack@f3aae3" ratio="0.49910873" ratioLeft="280" ratioRight="281" relationship="2" relative="org.eclipse.ui.internal.ViewStack@3eaf1f">&#x0A;<folder activePageID="org.eclipse.ui.views.ProblemView" appearance="2" expanded="2">&#x0A;<page content="org.eclipse.ui.views.ProblemView" label="Problems"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">&#x0A;<part id="0"/>
-</presentation>
-</folder>
-</info>
-<info part="org.eclipse.rtsc.xdctools.model.ui.views.packageView" ratio="0.5" ratioLeft="353" ratioRight="353" relationship="4" relative="topLeft"/>
-</mainWindow>
-</layout>
-</perspective>
-<perspective editorAreaVisible="1" fixed="0" version="0.016">
-<descriptor class="org.eclipse.debug.internal.ui.DebugPerspectiveFactory" id="org.eclipse.debug.ui.DebugPerspective" label="Debug"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.licensing"/>
-<alwaysOnActionSet id="com.ti.ccstudio.pinport.common.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.profile.setup.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.project.ui.actionSet_Project_Build"/>
-<alwaysOnActionSet id="com.ti.ccstudio.system.GELmenu.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.DebugActionSet.TargetConfiguration"/>
-<alwaysOnActionSet id="com.ti.ccstudio.trace.control.actionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.ui.mediaWiki"/>
-<alwaysOnActionSet id="com.ti.ccstudio.useaccess.viewsMenuSet"/>
-<alwaysOnActionSet id="com.ti.dvt.graph.visualization.graph"/>
-<alwaysOnActionSet id="com.ti.dvt.profiler.actionSet"/>
-<alwaysOnActionSet id="com.ti.dvt.rovsupport"/>
-<alwaysOnActionSet id="com.ti.dvt.rta.actionSet"/>
-<alwaysOnActionSet id="com.ti.dvt.trace.actions.TraceAction"/>
-<alwaysOnActionSet id="com.ti.dvt.via.plugin.ActionSet"/>
-<alwaysOnActionSet id="org.eclipse.cdt.ui.CodingActionSet"/>
-<alwaysOnActionSet id="org.eclipse.search.searchActionSet"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.openExternalFile"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.navigation"/>
-<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo"/>
-<alwaysOnActionSet id="org.eclipse.ui.actionSet.keyBindings"/>
-<alwaysOnActionSet id="org.eclipse.update.ui.softwareUpdates"/>
-<alwaysOnActionSet id="org.eclipse.rtsc.xdaistools.ui.actionSet"/>
-<alwaysOnActionSet id="org.eclipse.rtsc.xdctools.ui.actionSet"/>
-<alwaysOnActionSet id="org.eclipse.debug.ui.launchActionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.actionSet_Launch"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.DebugActionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.DebugScopeActionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.RealTimeActionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.ResetActionSet"/>
-<alwaysOnActionSet id="com.ti.ccstudio.debug.ui.DebugActionSet.msp430"/>
-<alwaysOnActionSet id="org.eclipse.cdt.debug.ui.debugActionSet"/>
-<alwaysOnActionSet id="org.eclipse.ui.NavigateActionSet"/>
-<alwaysOnActionSet id="org.eclipse.debug.ui.breakpointActionSet"/>
-<alwaysOnActionSet id="org.eclipse.debug.ui.debugActionSet"/>
-<show_view_action id="org.eclipse.debug.ui.DebugView"/>
-<show_view_action id="org.eclipse.debug.ui.BreakpointView"/>
-<show_view_action id="org.eclipse.ui.views.ContentOutline"/>
-<show_view_action id="org.eclipse.ui.console.ConsoleView"/>
-<show_view_action id="org.eclipse.ui.views.TaskList"/>
-<show_view_action id="com.ti.ccstudio.debug.registers.ui.Registers"/>
-<show_view_action id="com.ti.ccstudio.debug.registers.ui.Expressions"/>
-<show_view_action id="com.ti.ccstudio.debug.registers.ui.Variables"/>
-<show_view_action id="com.ti.ccstudio.debug.trace.ui.TraceView"/>
-<show_view_action id="com.ti.ccstudio.debug.ui.views.KernelObjects"/>
-<show_view_action id="com.ti.ccstudio.debug.ui.TIDisassemblyView"/>
-<show_view_action id="com.ti.ccstudio.memory.ui.view.TIMemoryView"/>
-<show_view_action id="com.ti.ccstudio.pinconnect.ui.PinConnectView"/>
-<show_view_action id="com.ti.ccstudio.portconnect.ui.PortConnectView"/>
-<show_view_action id="com.ti.ccstudio.scripting.console.ConsoleView"/>
-<show_view_action id="com.ti.ccstudio.system.setup.ui.views.TargetConfigurationView"/>
-<show_view_action id="org.eclipse.pde.runtime.LogView"/>
-<new_wizard_action id="com.ti.ccstudio.system.setup.editor.wizards.SystemSetupNewWizard"/>
-<new_wizard_action id="org.eclipse.rtsc.xdctools.buildDefinitions.DSPBIOS_5_31.tools.DSPBIOSCreateNew"/>
-<perspective_action id="org.eclipse.cdt.ui.CPerspective"/>
-<view id="com.ti.ccstudio.debug.registers.ui.Variables"/>
-<view id="com.ti.ccstudio.debug.registers.ui.Expressions"/>
-<view id="org.eclipse.debug.ui.DebugView"/>
-<view id="org.eclipse.ui.console.ConsoleView"/>
-<view id="org.eclipse.ui.views.ProblemView"/>
-<view id="com.ti.ccstudio.debug.ui.TIDisassemblyView"/>
-<fastViews>
-<view id="org.eclipse.cdt.ui.CView" ratio="0.3"/>
-<view id="com.ti.ccstudio.system.setup.ui.views.TargetConfigurationView" ratio="0.3"/>
-</fastViews>
-<layout>
-<mainWindow>
-<info folder="true" part="org.eclipse.debug.internal.ui.ToolsFolderView">
-<folder activePageID="org.eclipse.debug.ui.DebugView" appearance="2" expanded="2">
-<page content="com.ti.ccstudio.debug.registers.ui.Variables" label="Local (1)"/>
-<page content="com.ti.ccstudio.debug.registers.ui.Expressions" label="Watch (1)"/>
-<page content="com.ti.ccstudio.debug.registers.ui.Registers" label="LabelNotFound"/>
-<page content="org.eclipse.debug.ui.DebugView" label="Debug"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
-<part id="0"/>
-<part id="1"/>
-<part id="2"/>
-</presentation>
-</folder>
-</info>
-<info folder="true" part="stickyFolderRight" ratio="0.7497382" ratioLeft="1432" ratioRight="478" relationship="2" relative="org.eclipse.debug.internal.ui.ToolsFolderView">
-<folder appearance="2" expanded="2">
-<page content="org.eclipse.help.ui.HelpView" label="LabelNotFound"/>
-<page content="org.eclipse.ui.internal.introview" label="LabelNotFound"/>
-<page content="org.eclipse.ui.cheatsheets.views.CheatSheetView" label="LabelNotFound"/>
-</folder>
-</info>
-<info folder="true" part="org.eclipse.ui.internal.ViewStack@80ae91" ratio="0.7497349" ratioLeft="707" ratioRight="236" relationship="4" relative="org.eclipse.debug.internal.ui.ToolsFolderView">
-<folder activePageID="org.eclipse.ui.console.ConsoleView" appearance="2" expanded="2">
-<page content="org.eclipse.ui.console.ConsoleView" label="Console"/>
-<page content="org.eclipse.ui.views.BookmarkView" label="LabelNotFound"/>
-<page content="org.eclipse.ui.views.PropertySheet" label="LabelNotFound"/>
-<page content="com.ti.dvt.ui.views.line:SingleTime*" label="LabelNotFound"/>
-<page content="com.ti.dvt.ui.views.line:DualTimeA*" label="LabelNotFound"/>
-<page content="com.ti.dvt.ui.views.line:Real*" label="LabelNotFound"/>
-<page content="com.ti.dvt.ui.views.line:Magnitude*" label="LabelNotFound"/>
-<page content="com.ti.dvt.ui.views.line:MagnitudeOnly*" label="LabelNotFound"/>
-<page content="org.eclipse.ui.views.ProblemView" label="Problems"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
-<part id="0"/>
-<part id="1"/>
-</presentation>
-</folder>
-</info>
-<info part="org.eclipse.ui.views.ResourceNavigator" ratio="0.5" ratioLeft="955" ratioRight="955" relationship="2" relative="org.eclipse.ui.internal.ViewStack@80ae91"/>
-<info part="org.eclipse.ui.editorss" ratio="0.33095577" ratioLeft="232" ratioRight="469" relationship="4" relative="org.eclipse.debug.internal.ui.ToolsFolderView"/>
-<info folder="true" part="org.eclipse.ui.internal.ViewStack@1f942a6" ratio="0.7497382" ratioLeft="1432" ratioRight="478" relationship="2" relative="org.eclipse.ui.editorss">
-<folder activePageID="com.ti.ccstudio.debug.ui.TIDisassemblyView" appearance="2" expanded="0">
-<page content="com.ti.ccstudio.debug.ui.TIDisassemblyView" label="Disassembly"/>
-<page content="com.ti.ccstudio.memory.ui.view.TIMemoryView" label="LabelNotFound"/>
-<page content="org.eclipse.ui.views.ContentOutline" label="LabelNotFound"/>
-<page content="com.ti.ccstudio.debug.ui.views.KernelObjects" label="LabelNotFound"/>
-<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
-<part id="0"/>
-</presentation>
-</folder>
-</info>
-<info folder="true" part="org.eclipse.debug.internal.ui.BreakpointFolderView" ratio="0.49947643" ratioLeft="477" ratioRight="478" relationship="2" relative="org.eclipse.debug.internal.ui.ToolsFolderView">
-<folder appearance="2" expanded="2">
-<page content="org.eclipse.debug.ui.BreakpointView" label="LabelNotFound"/>
-</folder>
-</info>
-</mainWindow>
-</layout>
-</perspective>
-</perspectives>
-<workingSets/>
-<navigationHistory>
-<editors>
-<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/RTDSP/intio.c"/>
-<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.ui.DefaultTextEditor" path="/RTDSP/Matlab/filter_coeff.txt"/>
-<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.asm.AsmEditor" path="/RTDSP/Debug/dsp_bios_cfg.s62"/>
-<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.asm.AsmEditor" path="/RTDSP/Debug/dsp_bios_cfg.s62"/>
-<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.asm.AsmEditor" path="/RTDSP/Debug/dsp_bios_cfg.s62"/>
-</editors>
-<item historyLabel="intio.c" index="0">
-<position/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="6242" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3602" y="0"/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="6242" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="6141" y="0"/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="8" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5630" y="0"/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="6240" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5630" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="6168" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3936" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3987" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="6107" y="0"/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="6240" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3682" y="0"/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="6242" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3682" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="dsp_bios_cfg.s62" index="2">
-<position info="not_deleted" x="18873" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5792" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="2390" y="86"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5792" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5764" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="filter_coeff.txt" index="1">
-<position info="not_deleted" x="6242" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3771" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="6090" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5764" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="dsp_bios_cfg.s62" index="3">
-<position info="not_deleted" x="18873" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3748" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="1368" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3952" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="1626" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="dsp_bios_cfg.s62" index="4">
-<position info="not_deleted" x="18873" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3740" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3623" y="0"/>
-</item>
-<item historyLabel="intio.c" index="0">
-<position info="not_deleted" x="5632" y="0"/>
-</item>
-<item active="true" historyLabel="intio.c" index="0">
-<position info="not_deleted" x="3769" y="0"/>
-</item>
-</navigationHistory>
-<stickyState>
-<perspective IMemento.internal.id="org.eclipse.debug.ui.DebugPerspective"/>
-</stickyState>
-<input factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/" type="8"/>
-</page>
-<workbenchWindowAdvisor/>
-<actionBarAdvisor/>
-<trimLayout>
-<trimArea IMemento.internal.id="128">
-<trimItem IMemento.internal.id="org.eclipse.ui.internal.WorkbenchWindow.topBar"/>
-</trimArea>
-<trimArea IMemento.internal.id="1024">
-<trimItem IMemento.internal.id="org.eclise.ui.internal.FastViewBar"/>
-<trimItem IMemento.internal.id="org.eclipse.jface.action.StatusLineManager"/>
-<trimItem IMemento.internal.id="org.eclipse.ui.internal.progress.ProgressRegion"/>
-</trimArea>
-</trimLayout>
-</window>
-<mruList>
-<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.asm.AsmEditor" name="dsp_bios_cfg.s62" tooltip="RTDSP/Debug/dsp_bios_cfg.s62">
-<persistable path="/RTDSP/Debug/dsp_bios_cfg.s62"/>
-</file>
-<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="com.ti.ccstudio.bios.dsp.editor" name="dsp_bios_.tcf" tooltip="RTDSP/dsp_bios_.tcf">
-<persistable path="/RTDSP/dsp_bios_.tcf"/>
-</file>
-<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.ui.DefaultTextEditor" name="filter_coeff.txt" tooltip="RTDSP/Matlab/filter_coeff.txt">
-<persistable path="/RTDSP/Matlab/filter_coeff.txt"/>
-</file>
-<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="intio.c" tooltip="RTDSP/intio.c">
-<persistable path="/RTDSP/intio.c"/>
-</file>
-</mruList>
-</workbench> \ No newline at end of file
diff --git a/lab4/.metadata/version.ini b/lab4/.metadata/version.ini
deleted file mode 100644
index 6d8e206..0000000
--- a/lab4/.metadata/version.ini
+++ /dev/null
@@ -1 +0,0 @@
-cce.version=4.1.0.201007260900 \ No newline at end of file